我正在尝试检查输入是单词还是数字。
var = input("var: ")
if isinstance(var, str):
print "var = word"
else:
print "var = number"
这是我想出的代码,但遗憾的是它不起作用。
我是python和程序设计的新手,所以我不知道很多命令,
任何建议将不胜感激^^
最佳答案
input()
将接受并评估您的输入,然后再将其移交给您。也就是说,如果用户输入exit()
,则您的应用程序将退出。从安全的角度来看,这是不希望的。您可能想使用raw_input()
代替。在这种情况下,您可以期望返回的值是一个字符串。
如果仍然要检查字符串内容是否可以转换为(整数)数字,请按照此处讨论的方法进行操作:
How do I check if a string is a number (float) in Python?
简短概述:尝试将其转换为数字,然后查看是否失败。
示例(未试用):
value = raw_input()
try:
int(value)
print "it's an integer number"
except ValueError:
print "it's a string"
以供参考:
https://docs.python.org/2/library/functions.html#int
https://docs.python.org/2/library/functions.html#input
https://docs.python.org/2/library/functions.html#raw_input
请注意,
input()
函数的语义随Python 3改变:https://docs.python.org/3/library/functions.html#input
关于python - 如何在Python 2.x中检查输入是字符串还是整数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28486058/