我正在做一個非常基本的猜謎遊戲,在開始時會產生一個隨機數。問題是,如果我猜對了,數字保持不變。我把ALOT與我應該放置RNG的地方搞混了,但它要麼不工作,要麼代碼不會編譯。猜對後做一個新的隨機數
import random
import time
r = round(random.uniform(1,10))
print (r)
def start():
global r
n = int(input("Guess: "))
while (r != n):
if (r < n):
print("Too big")
time.sleep(.1)
start()
if (r > n):
print("Too small")
time.sleep(.1)
start()
r = round(random.uniform(1,10))
if(r == n):
print("You win!")
start()
start()
每次只需調用random.uniform。刪除所有全局東西和外部定義。不需要(和非常可怕的風格)!在函數def之後立即設置'''''''''''random.uniform()''''。再看一遍:這段代碼有更多的錯誤。我強烈建議首先通過基本的Python課程!還有一點意見:python代碼不是真正*編譯*。它是*解釋*。 – sascha
如果他們贏了,你爲什麼打電話給start()?此外,整個循環的重點是你不需要遞歸調用 – TerryA