【发布时间】:2018-03-31 13:47:03
【问题描述】:
我正在尝试用 Python 编写二十一点纸牌游戏。 在玩家类中,我想定义一个循环,要求玩家决定“击中”或“站立”(二十一点规则)。除非输入正确(“S”代表站立或“H”代表命中),否则循环需要循环直到玩家输入这两个选项之一。
这是我针对这个特定部分的代码:
while True:
try:
D = input('What is your decision, stand or hit? [press S for stand and H for hit]: ')
if D in ['S', 'H'] is False:
1/0
except:
print('Incorrect input, please try again (S for stand and H for hit)!')
continue
else:
if D == 'S':
print('OK, you decided to stand!')
else:
print('OK, you decided to hit. You will receive a 3rd card!')
break
所以想法是,除非决定是正确的(“S”或“H”),否则会产生错误,但到目前为止,代码还不能正常工作......我认为有一个小故障....
有什么建议吗? 亲切的问候,
L
【问题讨论】:
-
你知道吗?
'Foo' in ['S', 'H'] is False评估为?这可能会让你大吃一惊。 -
除了你还有什么期待?除了块,你应该期待尝试中的一些东西
标签: python python-3.x error-handling