Python第三章 猜數字游戲bug修正

  • 文件導入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"哇~~~, 真的假的!你居然發(fā)現了我的秘密! 它就是: ", 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 表達式,即你輸入字符串的時候必須使用引號將它括起來,否則它會引發(fā)一個 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
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • http://python.jobbole.com/85231/ 關于專業(yè)技能寫完項目接著寫寫一名3年工作經驗的J...
    燕京博士閱讀 7,828評論 1 118
  • 1. Java基礎部分 基礎部分的順序:基本語法,類相關的語法,內部類的語法,繼承相關的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,853評論 18 399
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現,斷路器,智...
    卡卡羅2017閱讀 136,695評論 19 139
  • @貳拾貳畫生 感謝簡明Python教程 輸入輸出 輸入:raw_input string = raw_input(...
    貳拾貳畫生閱讀 2,722評論 4 21
  • 感受客戶的一天-談業(yè)務之余,試著去了解你的客戶本人,比如 哪的人,在這個單位工作幾年了,一天的生活節(jié)奏,平常要加班...
    MrTimer閱讀 300評論 0 0

友情鏈接更多精彩內容