Python while语句为hangman gam设置难度

2024-09-19 23:27:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前正在通过阿尔斯维加特的发明你自己的电脑游戏和第10章(刽子手游戏)。我无法使用while循环设置难度。目前它甚至没有打印while循环下的语句。如果我改成困难!='':我可以让它打印语句并接受我的输入,但它仍然不能改变难度。代码如下:

difficulty = ''
while difficulty not in 'EMH':
    print("Enter difficulty: E - easy, M - medium, H - hard.")
    difficulty = input().upper()
if difficulty == 'M':
    del HANGMAN_ART[8]
    del HANGMAN_ART[7]
if difficulty == 'H':
    del HANGMAN_ART[8]
    del HANGMAN_ART[7]
    del HANGMAN_ART[5]
    del HANGMAN_ART[3]

谢谢你的帮助。你知道吗


Tags: 代码in游戏ifnot语句printdel
1条回答
网友
1楼 · 发布于 2024-09-19 23:27:02

while循环有两个问题需要解决。第一个问题是它从一开始就不会运行,因为'' not in 'EMH'最初的计算结果是False。第二个是你将difficulty设置为input().upper,而不是input().upper()。下面是一个修复示例:

difficulty = ''
while True:
    print("Enter difficulty: E - easy, M - medium, H - hard.")
    difficulty = input().upper()
    if difficulty in 'EMH':
        break

正如Jared Goguen在评论中指出的,您也可以保持相同的循环条件,但更改初始输入。你知道吗

difficulty = 'invalid_input'
while difficulty not in 'EMH':
    ...

相关问题 更多 >