if input()==int():
print('mission successful!')
else:
print('mission failed!')
对于上面的代码问题是,即使我的输入是整数,它也永远不会导致mission successful
。
我刚开始学习python。
答案 0 :(得分:2)
要检查输入字符串是否为数字,您可以使用:
if input().isnumeric():
print('mission successful!')
else:
print('mission failed!')
在Python中,检查字符串是否等于数字将始终返回False
。为了比较字符串和数字,首先将字符串转换为数字或将数字转换为字符串是有帮助的。例如:
>>> "1" == 1
False
>>> int("1") == 1
True
或
>>> 1 == "1"
False
>>> str(1) == "1"
True
如果无法将字符串转换为int
的数字,则会引发ValueError
。你可以这样抓住它:
try:
int("asdf")
except ValueError:
print("asdf is not an integer")