python函数判断是否为正整数

  • Post category:Python

判断一个数字是否为正整数可以通过以下几种方式实现:

1.使用正则表达式判断

可以使用re模块中的match()方法,结合正则表达式,判断一个字符串是否为正整数。以下是一个示例代码:

import re

def is_positive_integer(num):
    if re.match(r'^[1-9]\d*$', str(num)):
        return True
    else:
        return False

其中,^表示字符串的开头,[1-9]表示第一位是1-9中的任意一个数字,\d*表示0个或多个数字,$表示字符串的结尾。使用str()将输入数字转换为字符串,避免传入float类型导致判断失败。

2.使用内置函数判断

可以通过内置函数isinstance()int(),先判断输入对象是否为整数,再判断是否大于0。以下是一个示例代码:

def is_positive_integer(num):
    if isinstance(num, int) and num > 0:
        return True
    else:
        return False

其中,isinstance()用于判断一个对象是否是某个类的实例,int()用于将float等类型转换为整数。

在代码实现完成后,我们可以编写测试代码进行验证,如下所示:

print(is_positive_integer(10))  # True
print(is_positive_integer(0))  # False
print(is_positive_integer(-5)) # False
print(is_positive_integer(10.0)) # False

以上代码测试结果应该与注释一致。

至此,我们完成了Python函数判断是否为正整数的攻略。