美文网首页
Python第三章 猜数字游戏bug修正

Python第三章 猜数字游戏bug修正

作者: SYSinsight | 来源:发表于2017-07-17 10:48 被阅读0次
    • 文件导入shelve时不需要后缀
    #!/usr/bin/env python
    # coding: utf-8
    #copyRight by heibank
    import random
    secret = random.randint(1, 100)
    guess,tries = 0,0
    
    print u"你好, 你很幸运, 我是一个路过的神仙, 我有一个秘密!"
    print u"我的秘密是一个从1到99的数字, 我只会给你6次机会来猜。"
    print u"如果你猜到它, 那说明你真的很幸运, 赶紧去买彩票吧!"
    
    while guess != secret and tries <6:
        print u"你猜这个数字是多少? (1-100)"
        guess = raw_input()
    
        try:
            guess = int(guess)
        except:
            print u"输入的不是整数"
            continue
    
        if guess == secret:
            print u"哇~~~, 真的假的!你居然发现了我的秘密! 它就是: ", str(secret)
            break
        elif guess < secret:
            print str(guess),u"太小了, 你还差点运气! "
        elif guess > secret:
            print str(guess),u"太大了, 你还差点运气! "
        tries += 1
    else:
        print u"你唯一的机会已被你用完了!看来你还需要再攒点人品!"
        print u"还是让我告诉你吧!这个数字是: ", str(secret)
    
    • input(), raw_input() 均能接收 字符串 ,但 raw_input() 直接读取控制台的输入(任何类型的输入它都可以接收)。而对于 input() ,它希望能够读取一个合法的 python 表达式,即你输入字符串的时候必须使用引号将它括起来,否则它会引发一个 SyntaxError

    • raw_input() 将所有输入作为字符串看待,返回字符串类型。而 input() 在对待纯数字输入时具有自己的特性,它返回所输入的数字的类型( int, float );同时在例子 1 知道,input() 可接受合法的 python 表达式,举例:input( 1 + 3 ) 会返回 int 型的 4 。

    • import random :调用random库
      random.randint(a,b):在a,b范围上随机取一个整数

    • continue使得再次程序进入try模块

    try:
            guess = int(guess)
       except:
            print u"输入的不是整数"
            continue
    

    相关文章

      网友评论

          本文标题:Python第三章 猜数字游戏bug修正

          本文链接:https://www.haomeiwen.com/subject/nujghxtx.html