Python编程判断一个正整数是否为素数的方法
本文实例讲述了Python编程判断一个正整数是否为素数的方法。分享给大家供大家参考,具体如下:
import string import math #判断是否素数的函数 def isPrime(n): if(n<2): return False; elif(n==2): return True; elif(n>2): for d in range(2,int(math.ceil(math.sqrt(n))+1)): if(n%d==0): return False; return True; num=input(); strNum=list(str(num)) #将输入值转换为List字符串 flag=True; #设置一个标志位 #以下循环用于对用户输入数值进行循环位移后得到的所有结果 for i in range(0,len(strNum)): lastP=strNum.pop();#获取并删除最后一位 strNum.insert(0,lastP);#将上一步删除的数字添加到最前面 stempNumStr=''; #用于保存某一步位移结果的临时变量 for each in strNum: stempNumStr+=each;#将位移后的字符串合并 stempNum=string.atoi(stempNumStr);#转换为整形 #或者 stempNum= ( num//(10**i) ) + (num%(10**i))*(10**(lens-i)) if(isPrime(stempNum)==False):#再判断位移后的这个数是否是素数,如果不是 flag=False;#则直接判定当前用户输入的数字不是循环素数 print('%s not Loop prime number'%num); break;#并中止后续计算,退出循环 if(flag==True):#如果Flag的值依然为True,说明这个数一定是循环素数 print('%s is Loop prime number'%num);
运行结果如下图:
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。
相关推荐
-
python里对list中的整数求平均并排序
问题 定义一个int型的一维数组,包含40个元素,用来存储每个学员的成绩,循环产生40个0~100之间的随机整数, (1)将它们存储到一维数组中,然后统计成绩低于平均分的学员的人数,并输出出来. (2)将这40个成绩按照从高到低的顺序输出出来. 解决(python) #! /usr/bin python #coding:utf-8 from __future__ import division #实现精确的除法,例如4/3=1.333333 import random def make_scor
-
python里大整数相乘相关技巧指南
问题 大整数相乘 思路说明 对于大整数计算,一般都要用某种方法转化,否则会溢出.但是python无此担忧了. Python支持"无限精度"的整数,一般情况下不用考虑整数溢出的问题,而且Python Int类型与任意精度的Long整数类可以无缝转换,超过Int 范围的情况都将转换成Long类型. 例如: >>> 2899887676637907866*1788778992788348277389943 5187258157415700236034169791337062
-
python将ip地址转换成整数的方法
本文实例讲述了python将ip地址转换成整数的方法.分享给大家供大家参考.具体分析如下: 有时候我们用数据库存储ip地址时可以将ip地址转换成整数存储,整数占用空间小,索引也会比较方便,下面的python代码自定义了一个ip转换成整数的函数,非常简单,代码同时还提供了整数转换成ip地址的方法. import socket, struct def ip2long(ip): """ Convert an IP string to long """
-
Python基于二分查找实现求整数平方根的方法
本文实例讲述了Python基于二分查找实现求整数平方根的方法.分享给大家供大家参考,具体如下: x=int(raw_input('please input a int:')) if x<0: retrun -1 low=0 high=x ans=(low+high)/2.0 sign=ans while ans**2 !=x: if ans**2>x: high=ans else: low=ans ans=(low+high)/2.0 if sign==ans: break print ans
-
Python解惑之整数比较详解
前言 在 Python 中一切都是对象,毫无例外整数也是对象,对象之间比较是否相等可以用==,也可以用is. ==和is操作的区别是: is比较的是两个对象的id值是否相等,也就是比较俩对象是否为同一个实例对象,是否指向同一个内存地址. ==比较的是两个对象的内容是否相等,默认会调用对象的__eq__()方法. 清楚is和==的区别之后,对此也许你有可能会遇到下面的这些困惑,于是就有了这样一篇文章,试图把Python中一些隐晦的东西趴出来,希望对你有一定的帮助. 我们先来看两段代码: 片段一:
-
Python两个整数相除得到浮点数值的方法
在python中进行两个整数相除的时候,在默认情况下都是只能够得到整数的值,而在需要进行对除所得的结果进行精确地求值时,想在运算后即得到浮点值,那么如何进行处理呢? 1.修改被除数的值为带小数点的形式即可得到浮点值,这种方法在被除数事先知道的情况下才可以采用有效,而这种情况意味着被除数的值是写死的.固定的,在绝大多数的情况下是不可行的: 2.在进行除法运算前导入一个实除法的模块,即可在两个整数进行相除的时候得到浮点的结果; 复制代码 代码如下: from __future__ import di
-
Python编程判断一个正整数是否为素数的方法
本文实例讲述了Python编程判断一个正整数是否为素数的方法.分享给大家供大家参考,具体如下: import string import math #判断是否素数的函数 def isPrime(n): if(n<2): return False; elif(n==2): return True; elif(n>2): for d in range(2,int(math.ceil(math.sqrt(n))+1)): if(n%d==0): return False; return True;
-
Python实现判断一个字符串是否包含子串的方法总结
本文实例总结了Python实现判断一个字符串是否包含子串的方法.分享给大家供大家参考,具体如下: 1.使用成员操作符 in >>> s='nihao,shijie' >>> t='nihao' >>> result = t in s >>> print result True 2.使用string模块的find()/rfind()方法 >>> import string >>> s='nihao,s
-
python判断所输入的任意一个正整数是否为素数的两种方法
素数(也称质数),是指除了1和该数本身,不能被任何正整数整除的正整数.判断一个正整数m是否为素数,只要判断m可否被2~根号m之中的任何一个正整数整除,如果m不能被此范围中任何一个正整数整除,m即为素数,否则m为合数. 方法一:(利用for循环和break语句) import math m = int(input("请输入一个整数(>1):")) k = int(math.sqrt(m)) for i in range(2, k+2): if m % i == 0: break #
-
Python编程判断这天是这一年第几天的方法示例
本文实例讲述了Python编程判断这天是这一年第几天的方法.分享给大家供大家参考,具体如下: 题目:输入某年某月某日,判断这一天是这一年的第几天? 实现代码: year=int(input('请输入年:')) month=int(input('请输入月:')) day=int(input('请输入天:')) sum=day days = [31,28,31,30,31,30,31,31,30,31,30,31] i=0 if ( year%4 == 0 and year%100 != 0) or
-
python实现判断一个字符串是否是合法IP地址的示例
一个刚结束的笔试题目,简单贴一下吧,下面是具体实现: #!usr/bin/env python #encoding:utf-8 ''' __Author__:沂水寒城 功能:判断一个字符串是否是合法IP地址 ''' import re def judge_legal_ip(one_str): ''' 正则匹配方法 判断一个字符串是否是合法IP地址 ''' compile_ip=re.compile('^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[
-
Python实现判断一个整数是否为回文数算法示例
本文实例讲述了Python实现判断一个整数是否为回文数算法.分享给大家供大家参考,具体如下: 第一个思路是先将整数转换为字符串,再将字符串翻转并与原字符串做比较 def isPalindrome(self, x): """ :type x: int :rtype: bool """ #思路:先将整数转换为字符串,再将字符串翻转并与原字符串做比较 x = str(x) return x == x[::-1] 代码简洁 第二个思路,尝试着不用字符串,
-
python判断一个变量是否已经设置的方法
python判断一个变量是否已经设置的方法:可以使用locals()函数来进行判断. locals()函数会以字典类型返回当前位置的全部局部变量,具体使用方法如:['testvar' in locals().keys()]. 方法如下: 第一种方法使用内置函数locals(): locals():获取已定义对象字典 'testvar' in locals().keys() 第二种方法使用内置函数dir(): dir():获取已定义对象列表 'testvar' in dir() 第
-
Android编程判断应用程序是否已安装的方法
本文实例讲述了Android编程判断应用程序是否已安装的方法.分享给大家供大家参考,具体如下: 这里以twitter程序为例,假设twitter程序包名为"com.twitter.android".这时候可用以下代码来判断是否被安装. PackageInfo packageInfo; try { packageInfo = this.getPackageManager().getPackageInfo( "com.twitter.android", 0); } ca
-
android编程判断应用是否具有某个权限的方法
本文实例讲述了android编程判断应用是否具有某个权限的方法.分享给大家供大家参考,具体如下: android在开发中有时候要判断应用中是否有某项权限,或者想获取到某个应用的权限清单,可以使用以下方法 1) 判断应用是否具有某个权限 PackageManager pm = getPackageManager(); boolean permission = (PackageManager.PERMISSION_GRANTED == pm.checkPermission("android.perm
-
Python编程产生非均匀随机数的几种方法代码分享
1.反变换法 设需产生分布函数为F(x)的连续随机数X.若已有[0,1]区间均匀分布随机数R,则产生X的反变换公式为: F(x)=r, 即x=F-1(r) 反函数存在条件:如果函数y=f(x)是定义域D上的单调函数,那么f(x)一定有反函数存在,且反函数一定是单调的.分布函数F(x)为是一个单调递增函数,所以其反函数存在.从直观意义上理解,因为r一一对应着x,而在[0,1]均匀分布随机数R≤r的概率P(R≤r)=r. 因此,连续随机数X≤x的概率P(X≤x)=P(R≤r)=r=F(x) 即X的分
随机推荐
- jQuery实现伪分页的方法分享
- TortoiseSVN使用教程
- java多线程编程之使用thread类创建线程
- 水晶报表图片不显示两种问题分析及解决方法
- asp.net中在用ajax格式传递数据到aspx页面时出现乱码
- PHP的命令行命令使用指南
- CI(CodeIgniter)模型用法实例分析
- WordPress开发中自定义菜单的相关PHP函数使用简介
- 强制Android应用使用某个Locale的方法
- 极易被忽视的javascript面试题七问七答
- 深入浅析Python字符编码
- python 域名分析工具实现代码
- 妻子同网友私奔后,北京某老公在BBS上的留言
- JS获取多维数组中相同键的值实现方法示例
- MSSQL中递归SQL查询语句实例说明-
- 通过JS来动态的修改url,实现对url的增删查改
- JavaScript中的await/async的作用和用法
- 微信小程序 地图(map)实例详解
- 清平云 betweb云服务完美版虚拟主机自动化套件使用介绍
- 详解ASP.NET WEB API 之属性路由