Python实现的简单算术游戏实例

 更新时间:2015年05月26日 10:16:01   作者:buaa_shang  
这篇文章主要介绍了Python实现的简单算术游戏,可实现随机给出算数表达式,并对用户输入答案进行判断的功能,需要的朋友可以参考下

本文实例讲述了Python实现的简单算术游戏。分享给大家供大家参考。具体实现方法如下:

#!/usr/bin/env python
from operator import add, sub 
from random import randint, choice
ops = {'+': 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):
      break
if __name__ == '__main__':
  main()

运行结果如下:

8 - 1 = 7
correct
Again? [y]y
7 - 1 = 6
correct
Again? [y]y
9 + 4 = 0
incorrect... try again
9 + 4 = 

希望本文所述对大家的Python程序设计有所帮助。

相关文章

  • Python实现企业微信机器人每天定时发消息实例

    Python实现企业微信机器人每天定时发消息实例

    这篇文章主要介绍了Python实现企业微信机器人每天定时发消息实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • Python可以实现栈的结构吗

    Python可以实现栈的结构吗

    在本篇文章里小编给各位整理的是关于Python实现栈的结构的条件的相关知识点,有需要的朋友们可以学习下。
    2020-05-05
  • 详解如何使用Python操作MySQL的各种功能和用法

    详解如何使用Python操作MySQL的各种功能和用法

    当今互联网时代,数据处理已经成为了一个非常重要的任务,而MySQL作为一款开源的关系型数据库,被广泛应用于各种场景,本篇博客将介绍如何使用Python操作MySQL的各种功能,以及一些高级用法,需要的朋友可以参考下
    2023-11-11
  • python获取一组数据里最大值max函数用法实例

    python获取一组数据里最大值max函数用法实例

    这篇文章主要介绍了python获取一组数据里最大值max函数用法,实例分析了max函数的使用技巧,需要的朋友可以参考下
    2015-05-05
  • python中重启for循环,使其重新开始遍历

    python中重启for循环,使其重新开始遍历

    这篇文章主要介绍了python中重启for循环,使其重新开始遍历方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • pyscript的简单应用实现

    pyscript的简单应用实现

    本文主要介绍了pyscript的简单应用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • Python多进程与多线程的使用场景详解

    Python多进程与多线程的使用场景详解

    这篇文章主要给大家介绍了关于Python多进程与多线程使用场景的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • Django ORM 事务和查询优化的操作方法

    Django ORM 事务和查询优化的操作方法

    这篇文章主要介绍了Django ORM 事务和查询优化,包括事务操作、ORM 惰性查询及only与defer相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-09-09
  • django中模板的html自动转意方法

    django中模板的html自动转意方法

    今天小编就为大家分享一篇django中模板的html自动转意方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • 跟老齐学Python之让人欢喜让人忧的迭代

    跟老齐学Python之让人欢喜让人忧的迭代

    跟一些比较牛X的程序员交流,经常听到他们嘴里冒出一个不标准的英文单词,而loop、iterate、traversal和recursion如果不在其内,总觉得他还不够牛X。当让,真正牛X的绝对不会这么说的,他们只是说“循环、迭代、遍历、递归”,然后再问“这个你懂吗?”。
    2014-10-10

最新评论