求10万以内的素数:
方法一:
n = 100000
for i in range(1, n):
for a in range(2, i):
if i % a == 0:
break
else:
print(i)
方法二:
n = 100000
print(2)
for i in range(3, n, 2):
for a in range(2, int(i ** 0.5) + 1): #for a in range(2, math.ceil(math.sqrt(i)))
if i % a == 0:
break
else:
print(i)
方法三:
import datetime
n = 100000
print(2)
start = datetime.datetime.now()
for i in range(3, n, 2):
if i % 6 != 1 and i %6 != 5:
continue
for a in range(2, int(i ** 0.5) + 1):
if i % a == 0:
break
else:
print(i)
total = (datetime.datetime.now() - start).total_seconds() print("spend time is : ", total)
方法四:
import datetime
n = 100000
print(2)
lst = [2]
start = datetime.datetime.now()
for i in range(3, n, 2):
for n in lst:
if i % n == 0:
break
else:
lst.append(i)
print(lst)
total = (datetime.datetime.now() - start).total_seconds()
print("spend time is : ", total)