import random #引入生成隨機數的模塊 ''' 需求:程序設定生成 1-20 之間的一個隨機數,讓用戶猜 日期:2019-10-21 作者:xiaoxiaohui 目的:猜數字game,旨在提高初學者對Python 變量類型以及循環結構的使用。 ''' secretNum = random.randint(1,20) print("這是一個位於 1-20 之間的數") #設定用戶只能猜 3 次 for number in range(1,4): print("請輸入猜測的數:") guess = int(input()) if guess == 0 : print("數字必須位於1-20之間") continue if guess > 20 : print("數字必須位於1-20之間") continue ''' if guess == 0 | guess > 20 : print("數字必須位於 1-20 之間") continue #爲什麼我把上面2部分合併爲if guess == 0 | guess > 20之後,代碼有了一個輸入0之後,不是我想要的直接跳過當次循環的bug #後期查到不要用|連接,用or連接就沒問題,也就是if guess == 0 or guess > 20 :所以上面代碼可以簡化的! ''' if guess < secretNum: print("太小啦") elif guess > secretNum: print("太大啦") else: break if(guess == secretNum): print("真厲害,猜對啦,就是",str(guess)) else: print("很遺憾,正確的答案應該是",str(secretNum))
C:\Users\Administrator\Desktop>c:\Python34\python.exe GuessNumber.py 這是一個位於 1-20 之間的數 請輸入猜測的數: 14 太大啦 請輸入猜測的數: 9 太大啦 請輸入猜測的數: 5 真厲害,猜對啦,就是 5 C:\Users\Administrator\Desktop>c:\Python34\python.exe GuessNumber.py 這是一個位於 1-20 之間的數 請輸入猜測的數: 7 真厲害,猜對啦,就是 7
備註:
(1)爲什麼我把上面剛開始的兩個if部分合併爲if guess == 0 | guess > 20之後,代碼有了一個輸入0之後,不是我想要的直接跳過當次循環的bug。
解答:後期查到不要用‘’|‘’連接,用‘’or‘’連接就沒問題,也就是if guess == 0 or guess > 20 :所以上面代碼可以簡化的!【後期總結下】
(2)就算是註釋,也要遵循開頭和結尾處引號保持代碼塊縮進,不然程序報錯!
左邊對 右邊錯