2016-04-07 15 views
0

私のコードはうまくいきました。私がこの機能を使用していない場合、プログラムはどのように動作するのですか?私は変数の数が定義されていないと私に言っている関数を持っています。変数を0または1として定義しようとしましたが、数字が0または1になってしまいます。これは学校向けのことです。提案は役に立ちます。ありがとう!Pythonのランド推測ゲーム

import random 

easy = random.randint (1,20) 
medium = random.randint (1,50) 
hard = random.randint (1,100) 
guessesTaken = 0 

name = input("Hello, What is your name? ") 

def difficulties(): 
    difficulty = input("Well, ",name,". What dificulty would you like ?  easy, medium, or hard? ") 
    if difficulty == "easy": 
     number = easy 
     print ("Okay, ",name,". I am thinking of a number between 1 and 20") 
    if difficulty == "medium": 
     number = medium 
     print ("Okay, ",name,". I am thinking of a number between 1 and 50") 
    if difficulty == "hard": 
     number = hard 
     print ("Okay, ",name,". I am thinking of a number between 1 and 100") 

difficulties() 

while guessesTaken < 6: 
    guess = int(input('Take a guess. ')) 
    guessesTaken = guessesTaken + 1 

    if guess < number: 
     print("Your guess is too low.") 

    if guess > number: 
     print("Your guess is too high.") 

    if guess == number: 
     break 

if guess == number: 
    guessesTaken = str (guessesTaken) 
    print("Good job, ",name," ! You guessed my number in ",guessesTaken," guesses, good job!") 

if guess != number: 
    number = str (number) 
    print("Nope. The number I was thinking of was ",number,", better luck next time!") 
+0

「私にいくつかの問題を引き起こしている」とはあまりにもあいまいです。あなたが直面している正確な問題を投稿してください。 –

+0

私の悪い、私は機能を使用していない場合、プログラムはどのように動作する必要があります。私は変数の数が定義されていないと私に言っている関数を持っています。 –

+0

ありがとう、質問に追加してください。 –

答えて

0

それはdifficulties()のローカル変数であるので、numberが定義されていないことを言っている理由があります。この問題を解決するには、difficulties()機能では、difficulty入力した後、ちょうどこれは、それがdifficulties()関数の外側で参照することができますnumberglobal変数を作る

global number

を入力します。 これが役立つことを願っています!

関連する問題