Я иду через книгу LearnPythonTheHardWay, и я застрял на ex35. Я решил создать свою собственную игру, когда он спросил об учебных упражнениях. У меня есть функция gold_room
, которая точно так же, как и его, но она вызывает ошибки заголовка для обоих кодов (его и моих).Локальная переменная, на которую ссылаются до назначения Python 3.4.5
def gold_room():
print("You enter a room full of gold.")
print("Do you take the gold and run to the exit or you just walk out with nothing in your hands?")
choice = input("> ")
if choice == "take":
print("How much do you take?")
choice_two = input("> ")
if "0" in choice_two or "1" in choice_two:
how_much = int(choice_two)
else:
print("Man, learn to type a number.")
if how_much < 50:
print("You're not greedy. You win!")
exit(0)
else:
print("You greedy bastard!")
exit(0)
elif choice == "walk":
print("You're not greedy. You win!")
exit(0)
else:
print("I don't know what that means")
UnboundLocalError: local variable 'how_much' referenced before assignment
Через некоторое время цикл может помочь: В то время как choice_two не 0 или 1 запрос вход для choice_two снова и снова. –
Большое вам спасибо! Теперь я получаю это (: – andzedd
@andzedd Если этот ответ [адресованный вашей проблеме] (http://stackoverflow.com/help/someone-answers), пожалуйста, рассмотрите [его принятие] (http://meta.stackexchange.com/ вопросы/5234), нажав на галочку/галочку слева от ответа, превратив ее в зеленый цвет. Это означает, что вопрос удовлетворен вашим удовлетворением и присуждается [репутация] (http://stackoverflow.com/help/whats -решение) и вам, и человеку, который ответил. – MattDMo