我刚刚开始学习Python(这是我的第一门语言)。我想做一个简单的程序来检查用户输入的数字是否为整数。
我的代码是
number = input('Insert number: ')
if isinstance(number, int):
print('INT')
else:
print('NOT')
我不知道为什么,但每个数字都会被打印成 "NOT"。如果我只是在代码中输入 "number = 1",它就会打印 "INT",但如果我在控制台输入 "1",当程序要求输入时,它就会打印 "NOT"。为什么会这样?
(我使用的是PyCharm的Python 3.8)
当你输入一些东西时,类型总是一个 str
. 如果你尝试。
number = input('Insert number: ')
if isinstance(number, str):
print('INT')
else:
print('NOT')
你将总是得到:
INT
如果你只想检测输入是否是整数,你可以使用 str.isdigit()
:
number = input('Insert number: ')
if number.isdigit():
print('INT')
else:
print('NOT')