NameError во время написания игры в блэкджек (обновлено) - PullRequest
0 голосов
/ 15 января 2019

Вчера я опубликовал вопрос о NameError, который я получаю при запуске моей программы. Из комментариев, которые я получил к своему сообщению, я решил задать тот же вопрос, только на этот раз добавив ссылку на мой репозиторий Github, чтобы вы могли получить полную ссылку и контекст для моей конкретной проблемы, надеюсь, помогая мне понять, что я должен сделать, чтобы решить моя проблема. Это мой репозиторий Github:

https://github.com/AlonSalzmann/Blackjack

у меня проблема с этой ошибкой:

Traceback (most recent call last):
  File "C:/Users/pc/PycharmProjects/Blackjack/Game Flow/Game_Flow.py", line 83, in <module>
    player_turn()
  File "C:/Users/pc/PycharmProjects/Blackjack/Game Flow/Game_Flow.py", line 29, in player_turn
    user_decision = input('would you like to hit or hold?')
  File "<string>", line 1, in <module>
NameError: name 'hit' is not defined

Во время работы этот блок кода:

def player_turn():
    if sum(player_card_numbers) < 21:
        user_decision = input('would you like to hit or hold?')
        if user_decision == 'hit':
            player_cards.append(deck.draw())
            print player_cards, dealer_cards
            player_turn()

        elif user_decision == 'hold':
            print "Dealer's turn!"
            dealer_turn()
        else:
            print "player must choose 'hit' or 'hold'"
            player_turn()

    elif sum(player_card_numbers) == 21:
        print "Blackjack!"
        dealer_turn()

    else:
        print "Player Burnt! \nDealer's turn!"
        dealer_turn()

Этот блок кода находится в «Gameflow.py» в папке «Gameflow». Еще раз, я был бы очень признателен за объяснение, которое, надеюсь, стало проще теперь, когда весь проект доступен через мою учетную запись Github. Этот проект является написанным на питоне 2,7

1 Ответ

0 голосов
/ 15 января 2019

При использовании Python 2.x необходимо использовать функцию raw_input, а не функцию ввода.

В Python 2.x input () оценивает ввод как выражение Python, а не как строку.

Вы можете узнать больше об этом поведении здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...