Python怎么去求100以内的所有素数?这里两个方法很简单
罗西汉
优草派
在Python之中,只要学会基础的一些语法就可以去实现一些简单的数值计算了。例如求平方、平均数、中位数等等。而下面这篇文章将会给大家带来使用python计算100以内所有素数的方法,往下看看吧。
素数又被称之为质数,指定是一个数除了1和它本身之外不再有其他因数的就叫做质数。简单来说,只有不能被自己整除的才是质数。
(1)使用两个for循环嵌套就能够去实现100以内所有素数的求取,原理就是在第一层循环之中获取到的是2-100的数字集合。在第二层循环之中就由第一层循环得到的每一个结果去除以它自身,如果能被整除就不是,示例如下所示:
num=[]; i=2 for i in range(2,100): j=2 for j in range(2,i): if(i%j==0): break else: num.append(i) print(num)
(2)除了使用for循环之外还可以使用python标准库math之中的sqrt函数去配合列表推导式从而得出100以内素数的结果。原理其实也是不断地去使用100以内的每一个数字去除以它,不过是简化了for循环的代码,示例如下:
import math filter(lambda x: not [x%i for i in range(2, int(math.sqrt(x))+1) if x%i ==0], range(2,100+1))
得出的结果和for循环的结果是一样的,是使用了lambda表示式将多行代码连接起来写了,这样能够减少代码量。
以上就是关于“Python怎么去求100以内的所有素数?这里两个方法很简单”的全部内容了,想要了解更多python的实用知识和代码示例可以在网页顶部栏目中找到python查看更多哦。
【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。