昨天我发布了一个有关运行程序时遇到的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”文件夹中的“ Gameflow.py”中。 再次感谢您的解释,现在可以通过我的Github帐户访问整个项目,从而使我的工作更加轻松。 该项目 是用python 2.7
编写的答案 0 :(得分:1)
使用Python 2.x时,您必须使用raw_input函数,而不是输入函数。
在Python 2.x中,input()将输入评估为Python表达式,而不是字符串。
您可以了解有关该行为here的更多信息。