您的位置:首页 > 编程语言 > Python开发

python函数(模拟算数游戏)

2015-08-22 22:14 591 查看
本程序每次随机产生两个10以内的整数,然后对其进行+-操作,然后对用户输入结果进行判断,用到了operator模块的add,sub

python Document operator

[code]from operator import add,sub
from random import randint,choice
ops={'+':add,'-':sub}
def init():
    op=choice('+-')#随机返回序列中的元素
    nums=[randint(1,10) for x 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(input(pr))==ans:
                print('correct')
                break;
            if oops==2:
                print('answrer:\n%s %d'% (pr,ans))
            else :
                print('incorrect... try again')
                oops+=1
        except(KeyboardInterrupt,EOFError,ValueError):
            print('invalid input... try again')
def main():
    while True:
        init()
        try:
            opt=input('Again [y/n]?').lower()
            if opt and opt[0]=='n':
                break
        except(KeyboardInterrupt,EOFError):
            break
if __name__=='__main__':
    main()


下面是字典作为参数调用函数的简单例子

[code]def test(**a):
    for x in a:
        print(x,':',a[x])
if __name__=='__main__':
    a={'x':1,'y':2,'z':3}
    test(**a)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: