【发布时间】:2021-02-15 16:38:46
【问题描述】:
我正在练习使用列表,我正在制作一个数字列表,然后只将此列表中的素数添加到另一个列表中,一切都很好,直到我到达我想要确认的代码部分这个数字是素数,如果有什么遗漏,我不会,这是我的代码:
List = []
Primes = []
x = 0
for i in range(0,6):
List.append(int(input()))
flag = False
for e in List:
print(e)
for div in range(2,e):
if e%div == 0:
flag = True
if flag == False:
Primes.append(e)
print(List)
print(Primes)
我得到了这个输出:
[1, 42, 5, 8, 7, 56, 2, 34]
[]
【问题讨论】:
-
您必须在第一个
for循环内重置flag。另请注意,1 不是素数(您的代码会认为它是素数)。 -
感谢您的回答和推荐,非常感谢
标签: python python-3.x list foreach