检查输入是否为整数的问题(非常初学者)
Problem with checking if input is integer (very beginner)
我刚刚开始学习 Python(这是我的第一语言)。我正在尝试制作一个简单的程序来检查用户输入的数字是否为整数。
我的代码是:
number = input('Insert number: ')
if isinstance(number, int):
print('INT')
else:
print('NOT')
我不知道为什么,但每个数字都会打印出来 'NOT'。如果我只是在代码中声明 'number = 1',它会打印 'INT',但是如果我在程序要求输入时在控制台中输入“1”,它会打印 'NOT' 无论如何.这是为什么?
(我正在使用 Python 3.8 和 PyCharm)
当您输入内容时,类型始终是 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')
我刚刚开始学习 Python(这是我的第一语言)。我正在尝试制作一个简单的程序来检查用户输入的数字是否为整数。
我的代码是:
number = input('Insert number: ')
if isinstance(number, int):
print('INT')
else:
print('NOT')
我不知道为什么,但每个数字都会打印出来 'NOT'。如果我只是在代码中声明 'number = 1',它会打印 'INT',但是如果我在程序要求输入时在控制台中输入“1”,它会打印 'NOT' 无论如何.这是为什么?
(我正在使用 Python 3.8 和 PyCharm)
当您输入内容时,类型始终是 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')