【问题标题】:Problem with checking if input is integer (very beginner) [duplicate]检查输入是否为整数的问题(非常初学者)[重复]
【发布时间】:2020-10-05 10:11:28
【问题描述】:

我刚刚开始学习 Python(这是我的第一语言)。我正在尝试制作一个简单的程序来检查用户输入的数字是否为整数。

我的代码是:

number = input('Insert number: ')

if isinstance(number, int):
    print('INT')
else:
    print('NOT')

我不知道为什么,但每个数字都会打印“NOT”。如果我只是在代码中声明'number = 1',它会打印'INT',但是如果我在程序要求输入时在控制台中输入'1',无论如何它都会打印'NOT'。这是为什么呢?

(我正在使用 Python 3.8 和 PyCharm)

【问题讨论】:

标签: python if-statement input int isinstance


【解决方案1】:

当您输入内容时,类型始终为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')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多