快速素数列表生成器

这是一个利用筛选算法生成小于等于特定数值的素数列表的Python函数。该函数返回一个包含众多素数的列表,例如:[2, 3, 5, 7, 11, 13, ... , 2999]。" 92963759,8256620,GN3中配置VPCS IP地址及DHCP设置,"['运维', '网络配置', '虚拟设备', 'DHCP服务器']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

描述:

这是使用筛选算法的快速素数列表生成器。 此函数返回素数列表,其中<=参数。

def primes(n): 
    if n==2: return [2]
    elif n<2: return []
    s=range(3,n+1,2)
    mroot = n ** 0.5
    half=(n+1)/2-1
    i=0
    m=3
    while m <= mroot:
        if s[i]:
            j=(m*m-3)/2
            s[j]=0
            while j<half:
                s[j]=0
                j+=m
        i=i+1
        m=2*i+3
    return [2]+[x for x in s if x] 
print primes(13)
print primes(3000) 
来自ActiveState的Python Cookbook区域( 此处 )。

-------------我们得到------------

[2、3、5、7、11、13]

[2、3、5、7、11、13、17、19、23、29、31、37、41、43、47、53、59、61、67、71、73,

79、83、89、97、101、103、107、109、113、127、131、137、139、149、151、157、163

,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251

,257、263、269、271、277、281、283、293、307、311、313、317、331、337、347、349

,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443

,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557

,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647

,653、659、661、673、677、683、691、701、709、719、727、733、739、743、751、757

,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863

,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983

,991、997、1009、1013、1019、1021、1031、1033、1039、1049、1051、1061、1063、10

69、1087、1091、1093、1097、1103、1109、1117、1123、1129、1151、1153、1163、1171

,1181、1187、1193、1201、1213、1217、1223、1229、1231、1237、1249、1259、1277,

1279、1283、1289、1291、1297、1301、1303、1307、1319、1321、1327、1361、1367、13

73、1381、1399、1409、1423、1427、1429、1433、1439、1447、1451、1453、1459、1471

,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,

1567、1571、1579、1583、1597、1601、1607、1609、1613、1619、1621、1627、1637、16

57、1663、1667、1669、1693、1697、1699、1709、1721、1723、1733、1741、1747、1753

,1759、1777、1783、1787、1789、1801、1811、1823、1831、1847、1861、1867、1871,

1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,19

87,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081

,2083、2087、2089、2099、2111、2113、2129、2131、2137、2141、2143、2153、2161,

2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,22

87、2293、2297、2309、2311、2333、2339、2341、2347、2351、2357、2371、2377、2381

,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,

2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,26

17,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699

,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,

2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,29

03,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999]

From: https://bytes.com/topic/python/insights/594790-fast-prime-number-list-generator

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值