Python實(shí)現(xiàn)的簡(jiǎn)單算術(shù)游戲?qū)嵗?/h1>
更新時(shí)間:2015年05月26日 10:16:01 作者:buaa_shang
這篇文章主要介紹了Python實(shí)現(xiàn)的簡(jiǎn)單算術(shù)游戲,可實(shí)現(xiàn)隨機(jī)給出算數(shù)表達(dá)式,并對(duì)用戶輸入答案進(jìn)行判斷的功能,需要的朋友可以參考下
本文實(shí)例講述了Python實(shí)現(xiàn)的簡(jiǎn)單算術(shù)游戲。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:
#!/usr/bin/env python
from operator import add, sub
from random import randint, choice
ops = {'+': add, '-':sub}
#定義一個(gè)字典
MAXTRIES = 2
def doprob():
op = choice('+-')
#用choice從'+-'中隨意選擇操作符
nums = [randint(1,10) for i in range(2)]
#用randint(1,10)隨機(jī)生成一個(gè)1到10的數(shù),隨機(jī)兩次使用range(2)
nums.sort(reverse=True)
#按升序排序
ans = ops[op](*nums)
#利用函數(shù)
pr = '%d %s %d = ' % (nums[0], op, nums[1])
oops = 0
#oops用來(lái)計(jì)算failure測(cè)試,當(dāng)三次時(shí)自動(dòng)給出答案
while True:
try:
if int(raw_input(pr)) == ans:
print 'correct'
break
if oops == MAXTRIES:
print 'answer\n %s%d' % (pr, ans)
break
else:
print 'incorrect... try again'
oops += 1
except (KeyboardInterrupt, EOFError, ValueError):
print 'invalid ipnut... try again'
def main():
while True:
doprob()
try:
opt = raw_input('Again? [y]').lower()
if opt and opt[0] == 'n':
break
except (KeyboardInterrupt, EOFError):
break
if __name__ == '__main__':
main()
運(yùn)行結(jié)果如下:
8 - 1 = 7
correct
Again? [y]y
7 - 1 = 6
correct
Again? [y]y
9 + 4 = 0
incorrect... try again
9 + 4 =
希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- Python實(shí)現(xiàn)的簡(jiǎn)單hangman游戲?qū)嵗?/a>
- python實(shí)現(xiàn)的簡(jiǎn)單RPG游戲流程實(shí)例
- Python加pyGame實(shí)現(xiàn)的簡(jiǎn)單拼圖游戲?qū)嵗?/a>
- python實(shí)現(xiàn)的簡(jiǎn)單文本類游戲?qū)嵗?/a>
- python實(shí)現(xiàn)的簡(jiǎn)單猜數(shù)字游戲
- 用Python編寫一個(gè)簡(jiǎn)單的俄羅斯方塊游戲的教程
- Python新手實(shí)現(xiàn)2048小游戲
- python實(shí)現(xiàn)的生成隨機(jī)迷宮算法核心代碼分享(含游戲完整代碼)
- Python寫的貪吃蛇游戲例子
- python簡(jiǎn)單猜數(shù)游戲?qū)嵗?/a>
相關(guān)文章
-
淺談JupyterNotebook導(dǎo)出pdf解決中文的問(wèn)題
這篇文章主要介紹了淺談JupyterNotebook導(dǎo)出pdf解決中文的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧 2020-04-04
-
Python實(shí)現(xiàn)簡(jiǎn)單的多任務(wù)mysql轉(zhuǎn)xml的方法
這篇文章主要介紹了Python實(shí)現(xiàn)簡(jiǎn)單的多任務(wù)mysql轉(zhuǎn)xml的方法,結(jié)合實(shí)例形式分析了Python查詢mysql結(jié)果集轉(zhuǎn)xml格式數(shù)據(jù)輸出的相關(guān)操作技巧,需要的朋友可以參考下 2017-02-02
-
Python實(shí)現(xiàn)加密接口測(cè)試方法步驟詳解
這篇文章主要介紹了Python實(shí)現(xiàn)加密接口測(cè)試方法步驟詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下 2020-06-06
-
詳解Python網(wǎng)絡(luò)爬蟲功能的基本寫法
這篇文章主要介紹了Python網(wǎng)絡(luò)爬蟲功能的基本寫法,網(wǎng)絡(luò)爬蟲,即Web Spider,是一個(gè)很形象的名字。把互聯(lián)網(wǎng)比喻成一個(gè)蜘蛛網(wǎng),那么Spider就是在網(wǎng)上爬來(lái)爬去的蜘蛛,對(duì)網(wǎng)絡(luò)爬蟲感興趣的朋友可以參考本文 2016-01-01
-
一文帶你掌握Python自然語(yǔ)言處理庫(kù)SpaCy
SpaCy是一個(gè)非常強(qiáng)大的Python自然語(yǔ)言處理庫(kù),它包含了眾多強(qiáng)大功能,如詞性標(biāo)注、命名實(shí)體識(shí)別、依賴關(guān)系解析等等,這篇文章的目標(biāo)是幫助你了解SpaCy的基本功能和如何使用,需要的朋友可以參考下 2023-07-07
-
Python高階函數(shù)map()?簡(jiǎn)介和使用詳解
map()?函數(shù)是Python中的內(nèi)置函數(shù),這個(gè)函數(shù)又叫做映射函數(shù),其實(shí)里面具有一個(gè)迭代器的功能,會(huì)依次遍歷可迭代對(duì)象進(jìn)行相關(guān)的操作,這篇文章主要介紹了Python高階函數(shù)map()?簡(jiǎn)介和使用詳解,需要的朋友可以參考下 2023-03-03
最新評(píng)論
本文實(shí)例講述了Python實(shí)現(xiàn)的簡(jiǎn)單算術(shù)游戲。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:
#!/usr/bin/env python from operator import add, sub from random import randint, choice ops = {'+': add, '-':sub} #定義一個(gè)字典 MAXTRIES = 2 def doprob(): op = choice('+-') #用choice從'+-'中隨意選擇操作符 nums = [randint(1,10) for i in range(2)] #用randint(1,10)隨機(jī)生成一個(gè)1到10的數(shù),隨機(jī)兩次使用range(2) nums.sort(reverse=True) #按升序排序 ans = ops[op](*nums) #利用函數(shù) pr = '%d %s %d = ' % (nums[0], op, nums[1]) oops = 0 #oops用來(lái)計(jì)算failure測(cè)試,當(dāng)三次時(shí)自動(dòng)給出答案 while True: try: if int(raw_input(pr)) == ans: print 'correct' break if oops == MAXTRIES: print 'answer\n %s%d' % (pr, ans) break else: print 'incorrect... try again' oops += 1 except (KeyboardInterrupt, EOFError, ValueError): print 'invalid ipnut... try again' def main(): while True: doprob() try: opt = raw_input('Again? [y]').lower() if opt and opt[0] == 'n': break except (KeyboardInterrupt, EOFError): break if __name__ == '__main__': main()
運(yùn)行結(jié)果如下:
8 - 1 = 7 correct Again? [y]y 7 - 1 = 6 correct Again? [y]y 9 + 4 = 0 incorrect... try again 9 + 4 =
希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。
- Python實(shí)現(xiàn)的簡(jiǎn)單hangman游戲?qū)嵗?/a>
- python實(shí)現(xiàn)的簡(jiǎn)單RPG游戲流程實(shí)例
- Python加pyGame實(shí)現(xiàn)的簡(jiǎn)單拼圖游戲?qū)嵗?/a>
- python實(shí)現(xiàn)的簡(jiǎn)單文本類游戲?qū)嵗?/a>
- python實(shí)現(xiàn)的簡(jiǎn)單猜數(shù)字游戲
- 用Python編寫一個(gè)簡(jiǎn)單的俄羅斯方塊游戲的教程
- Python新手實(shí)現(xiàn)2048小游戲
- python實(shí)現(xiàn)的生成隨機(jī)迷宮算法核心代碼分享(含游戲完整代碼)
- Python寫的貪吃蛇游戲例子
- python簡(jiǎn)單猜數(shù)游戲?qū)嵗?/a>
相關(guān)文章
淺談JupyterNotebook導(dǎo)出pdf解決中文的問(wèn)題
這篇文章主要介紹了淺談JupyterNotebook導(dǎo)出pdf解決中文的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-04-04Python實(shí)現(xiàn)簡(jiǎn)單的多任務(wù)mysql轉(zhuǎn)xml的方法
這篇文章主要介紹了Python實(shí)現(xiàn)簡(jiǎn)單的多任務(wù)mysql轉(zhuǎn)xml的方法,結(jié)合實(shí)例形式分析了Python查詢mysql結(jié)果集轉(zhuǎn)xml格式數(shù)據(jù)輸出的相關(guān)操作技巧,需要的朋友可以參考下2017-02-02Python實(shí)現(xiàn)加密接口測(cè)試方法步驟詳解
這篇文章主要介紹了Python實(shí)現(xiàn)加密接口測(cè)試方法步驟詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06詳解Python網(wǎng)絡(luò)爬蟲功能的基本寫法
這篇文章主要介紹了Python網(wǎng)絡(luò)爬蟲功能的基本寫法,網(wǎng)絡(luò)爬蟲,即Web Spider,是一個(gè)很形象的名字。把互聯(lián)網(wǎng)比喻成一個(gè)蜘蛛網(wǎng),那么Spider就是在網(wǎng)上爬來(lái)爬去的蜘蛛,對(duì)網(wǎng)絡(luò)爬蟲感興趣的朋友可以參考本文2016-01-01一文帶你掌握Python自然語(yǔ)言處理庫(kù)SpaCy
SpaCy是一個(gè)非常強(qiáng)大的Python自然語(yǔ)言處理庫(kù),它包含了眾多強(qiáng)大功能,如詞性標(biāo)注、命名實(shí)體識(shí)別、依賴關(guān)系解析等等,這篇文章的目標(biāo)是幫助你了解SpaCy的基本功能和如何使用,需要的朋友可以參考下2023-07-07Python高階函數(shù)map()?簡(jiǎn)介和使用詳解
map()?函數(shù)是Python中的內(nèi)置函數(shù),這個(gè)函數(shù)又叫做映射函數(shù),其實(shí)里面具有一個(gè)迭代器的功能,會(huì)依次遍歷可迭代對(duì)象進(jìn)行相關(guān)的操作,這篇文章主要介紹了Python高階函數(shù)map()?簡(jiǎn)介和使用詳解,需要的朋友可以參考下2023-03-03