私は0から所定の数gまでの数を推測できるプログラムを作成しています。しかし、新しいゲームの継ぎ目を開始する関数は、変数を決して定義しません。後で呼び出されたときに変数シームが割り当てられない
import random
g = 100
def new_game():
secret_number = random.randint(0,g)
return secret_number
def input_guess(x):
x = int(x)
print "guess was",x
if x > secret_number:
print "lower"
elif x < secret_number:
print "higher"
if x == secret_number:
print "correct"
new_game()
input_guess(33)
どんなに私はそれは常にそのsecret_numberが
NameError: name 'secret_number' is not defined
任意のヘルプ
が定義されていないと言って縫い目変更何?
私の機能でそれを変更させて頂くそのようちょっとである私は申し訳ありませんが、このコード私は決してそれを呼び出すことがないので動作します。 input_guess(33)のような推測を追加すると、それが再現されます。私も元のようにします – Hendrik
'secret_number'は' new_game'メソッドに対してローカルです。最後から2番目の行で呼び出されても、変数に代入されることはありません。さらに、そのようなグローバル変数の使用はぶつかることになります。 – Alexander
'secret_number'に' input_guess'のパラメータを設定する必要があります。 –