【发布时间】:2020-03-05 20:13:05
【问题描述】:
我是初学者,我的功能不起作用。我没有我错过的内容:
def string_length(stri):
if stri == int:
print(" not a string")
else:
print(len(stri), stri)
stri = str(input("please write a string: "))
string_length(stri)
在少数情况下,如果我写一个整数,if 语句将被忽略。
【问题讨论】:
-
并不是它被忽略了。就是你认为它在做什么和它实际上在做什么是非常不同的。 stri == int 是 not 你如何检查某事物是否是 an int。
-
您的“if”测试特定对象是否等于整数类型。这在这里没有意义。你想要“isinstance”。
-
另外,请注意,如果您从用户那里接受输入,则输入始终是字符串。 “3”和3是不同的。一个是字符串。