# -*- coding: cp936 -*-
from operator import add,sub,mul,div
from random import randint,choice
# 符号字典
ops = {"+":add,"-":sub,"*":mul,"/":div}
# 最多运算几次 之后输出答案。三次
Max = 2
def doprob():
op = choice('+-*/')
nums = [randint(1,10) for i in range(2)]
nums.sort(reverse = True)
ans = ops[op](*nums)
pr = '%d %s %d = ' % (nums[0],op,nums[1])
oops = 0
while True:
try:
if int(raw_input(pr)) == ans:
print 'corrent'
break
if oops == Max:
print 'answer \n %s%d' % (pr,ans)
else:
print 'incorrent......try again'
oops += 1
except(KeyboardInterrupt,EOFError,ValueError):
print 'invalid input ....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()
Python 计算器
最新推荐文章于 2024-05-19 11:09:09 发布