用python语言判断一个数是否为素数,Python判断是不是素数
Python有自己的函数isdigit,可以返回一个字符串是否为数字。返回True如果是数字;否则,返回False。
1= 1 print(str 1 . is digit())str 2= 1.1 print(str 2 . is digit())str 3=-1 print(str 3 . is digit())str 4= a print(str 4 . is digit())its
你可以看到,isdigit函数只能区分正整数,对小数和负数的判断存在误差。
下面是一个可以正确区分小数和负数的函数:
Is _ number (s): try: #如果可以运行float(s)语句,则返回True(字符串s是浮点数)。Float返回true,但valueError除外:# valueError是Python的标准异常,Pass #表示“传入的参数无效”。如果抛出类似ValueError的异常,则什么都不做(pass:什么都不做,一般用作占位符语句)try:import unicode data # package unicode data . numeric(s)#将表示数字的字符串转换为浮点数并返回的函数:返回true except (type error,value error): pass返回false。再做一个判断:
1= 1 print(IS _ NUMBER(str 1))str 2= 1.1 print(IS _ NUMBER(str 2))str 3=-1 print(IS _ NUMBER(str 3))str 4= a print(IS _ NUMBER(str 4))结果正确。
TrueTrueFalse很神奇的是,由于is_number中使用了函数unicodedata.numeric,我们现在可以区分汉字所代表的数字,并测试汉字‘八’:
str= eight print(is _ number(str 5))并且结果是:
真实参考文章:http://www.runoob.com/python3/python3-check-is-number.html
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。