python判断是否输入的是整数

python判断是否输入的是整数

作者:Rhett Bai发布时间:2026-03-29 00:13阅读时长:14 分钟阅读次数:13
常见问答
Q
如何在Python中检测用户输入是否为整数?

我想让用户输入一个值,并判断这个值是否是整数类型,应该怎么做?

A

使用try-except结构检测整数输入

可以使用try-except语句尝试将输入转换为整数,如果转换成功说明输入是整数,否则不是。例如:

user_input = input('请输入一个数字:')
try:
    val = int(user_input)
    print('输入的是整数')
except ValueError:
    print('输入的不是整数')
Q
Python中判断字符串是否表示整数有哪些方法?

除了使用int()转换捕获异常,还有没有其它方法判断字符串是否为整数?

A

使用字符串方法和正则表达式

可以用字符串的 isdigit() 方法判断数字组成,但它只适用于非负整数。例如:

s = '1234'
if s.isdigit():
    print('字符串表示一个非负整数')
else:
    print('不是整数')

另一种是用正则表达式匹配整数的格式,可以处理负数和零,例如:

import re
s = '-123'
if re.match('^-?\d+$', s):
    print('字符串是整数')
else:
    print('不是整数')
Q
如何让Python程序循环输入直到获得有效的整数?

用户可能会输入非整数,怎样实现程序反复提示输入,直到获得一个整数为止?

A

使用循环加异常处理实现安全输入

可以使用 while 循环配合 try-except 来持续获取用户输入并判断,例如:

while True:
    user_input = input('请输入整数:')
    try:
        val = int(user_input)
        print(f'您输入的整数是 {val}')
        break
    except ValueError:
        print('输入无效,请输入一个整数。')