首页 > 编程语言 > 详细

python 找素数

时间:2019-05-06 01:12:17      阅读:160      评论:0      收藏:0      [点我收藏+]

初始版本 没什么好讲的.

def getSushu():
    res = [2]
    for i in range(3,100):
        flag = True
        for j in range(2,i):
            if i%j==0:
                flag = False
                break
        if flag:
            res.append(i)
    return res
print(getSushu())

1. 找因数找到平方根就可以了

2. for else 的用法 (else 其实是与for里的break形成排他关系)

import math #
l = [2, 3]
for i in range(5, 101): #第一层循环,从5到100
    for j in range(2, int(math.sqrt(i))+1): #一个数的最大因数是它的平方根
        if i%j == 0: #如果出现整除说明有因子
            break 
    else:
        l.append(i) #for正常执行(包括contine)完会执行else,break不会执行else
print(" ".join(map(str, l))) #先将列表中的元素变为字符串再用空格连接输出

python 找素数

原文:https://www.cnblogs.com/ShawSpring/p/10817348.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!