【发布时间】:2022-11-20 08:12:35
【问题描述】:
我正在尝试构建一个简单的游戏,我希望 Python 在玩家输入负数时返回一条消息。我的问题是,当玩家尝试输入负数时,它们会被解释为字符串。
这是我的脚本:
while True:
user_guess = input("Guess a number: ")
if user_guess.isdigit():
user_guess = int(user_guess)
if user_guess < 0:
print("Too low, guess a number between 0 and 10.")
if user_guess > 10:
print("Too high, guess a number between 0 and 10.")
else:
print("It is not a number.")
break
【问题讨论】:
-
很确定“isdigit”只检查个位数——如果你去掉那个检查会发生什么?
-
当您的代码针对各种用户输入运行时,您能否在您的问题中添加您想要的行为的描述/模拟?现在,您的代码成功运行 - 并在用户输入负数或大于 10 的值时正确地将消息打印到屏幕。您还希望您的代码执行哪些它现在没有执行的操作?
-
@爱德华彼得斯
The isdigit() method returns True if all the characters are digits, otherwise False. -
哈 - 奇怪的名字,但仍然,“-”不是数字所以应该失败,对吧?