2016-04-07 18 views
0

Benim kod çalışıyordu. Eğer işlevi kullanmıyorsam, programlar nasıl çalışması gerektiğini çalışır. Fonksiyona sahip olduğumda bana değişken numara tanımlanmadığını söylüyor. Değişkeni 0 ya da 1 olarak tanımlamayı denedim, ancak o zaman 0 ya da 0 numaramı yazmam bitti. Bunun okul için olduğunu aklınızda bulundurun. Öneriler yardımcı olacaktır, teşekkürler! o difficulties() yerel değişken olduğu içinrando tahmin oyun 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

"Bazı sorunlara neden oluyor" çok belirsiz. Lütfen karşılaştığınız konuları yayınlayın. –

+0

Benim kötüyüm, eğer işlevi kullanmıyorsam, programlar nasıl çalışması gerektiğini çalışır. Fonksiyona sahip olduğumda bana değişken numara tanımlanmadığını söylüyor. –

+0

Teşekkürler, lütfen bunu soruya ekleyin. –

cevap

0

nedeni number tanımlı değil söyleyerek olmasıdır. Bu sorunu gidermek için, difficulties() işlevinde, difficulty girdi sonra, sadece bu number o difficulties() fonksiyonun dışında başvurulan sağlayan bir global değişken yapar

global number

yazın. Umarım bu yardımcı olur!