这个问题在这里已有答案:
我试图创建一个简单的Python程序,通过变量“user_input”获取用户输入,然后通过函数“type()”确定变量类型 . 以下是代码示例:
user_input = raw_input('Enter something: ')
if type(user_input) == 'int':
print "integer"
elif type(user_input) == 'str':
print "string"
所以你看,代码提示用户输入一些东西,如果他们输入的是一个整数,它将打印“整数”,如果输入是一个字符串类型,它将打印“字符串” . 代码确实在没有错误消息的情况下执行,但是当我键入字符串值或整数时,它什么都不打印,没有空格,没有消息,N-O-T-H-I-N-G . 这是一个例子:
>>>
Enter something: hello
>>>
因此,由于它不起作用,我不得不问,Python是否有可能比较用户输入的变量类型然后通过if / else语句?
1 回答
你有两个问题 .
首先,type返回实际类型,而不是类型的字符串描述 .
其次,raw_input的返回值类型始终是一个字符串 .