本文实例讲述了Python实现的简单算术游戏。分享给大家供大家参考。具体实现方法如下:
#!/usr/bin/env pythonfrom operator import add, sub from random import randint, choiceops = {'+': add, '-':sub}#定义一个字典MAXTRIES = 2 def doprob(): op = choice('+-') #用choice从'+-'中随意选择操作符 nums = [randint(1,10) for i in range(2)] #用randint(1,10)随机生成一个1到10的数,随机两次使用range(2) nums.sort(reverse=True) #按升序排序 ans = ops[op](*nums) #利用函数 pr = '%d %s %d = ' % (nums[0], op, nums[1]) oops = 0 #oops用来计算failure测试,当三次时自动给出答案 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): breakif __name__ == '__main__': main()
运行结果如下:
8 - 1 = 7correctAgain? [y]y7 - 1 = 6correctAgain? [y]y9 + 4 = 0incorrect... try again9 + 4 =
希望本文所述对大家的Python程序设计有所帮助。
新闻热点
疑难解答