私は最初に乱数を生成する非常に基本的な推測ゲームを作っています。問題は、私が正しく推測すれば、数字は変わらないということです。私はRNGをどこに置くべきかでALOTを使いこなしましたが、どちらもうまくいかない、またはコードがコンパイルされません。推測の後に新しい乱数を作ります
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をすべて削除します。必要ない(と本当にひどいスタイル)! function-defの直後に '' 'r'''を' '' random.uniform() '' 'に設定するだけです。もう一度見てみると、このコードの方がはるかに間違っています。私は非常に強く基本的なパイソンコースを通過することをお勧めします!もう1つの発言:pythonコードは実際には*コンパイルされていません。それは*解釈されます*。 – sascha
なぜ彼らが勝ったらstart()を呼びますか?また、ループ全体の全体点は再帰的に呼び出す必要はありません – TerryA