编写程序,输入一个大于 2 的自然数,然后输出小于该数字的所有素数组成的列表。
源代码如下:
# 素数函数
def prime_num(a):
if a == 1:
return -1
elif a == 2 or a == 3:
return 1
else:
for i in range(2, a):
if a % i == 0:
return -1
break
elif i == a-1:
return 1
# 主函数
num1 = int(input('请输入一个大于2的自然数:'))
seq = list(range(2, num1))
print(list(filter(lambda x: prime_num(x) == 1, seq)))
运行结果如下:
请输入一个大于2的自然数:25
[2, 3, 5, 7, 11, 13, 17, 19, 23]