0
我已經編寫了一個代碼來使素數達到列表中的某個限制。 如上所示。Python,從列表中刪除嵌套循環下的元素
import math
primes = []
for i in range(1, 101):
primes.append(i)
primes.remove(10) # Just removing for sake of experiment
tot = math.sqrt(len(primes))
for j in range(2, math.ceil(tot), 1):
for l in range(0, len(primes)):
k = j**2 + l*j
primes.remove(k)
primes.remove(12) # Just removing for sake of experiment
print(primes)
此代碼在嵌套循環中刪除元素時顯示錯誤。 錯誤如上所示。
Traceback (most recent call last):
File "/root/PycharmProjects/love/love.py", line 13, in <module>
primes.remove(k)
ValueError: list.remove(x): x not in list
這究竟是爲什麼,因爲這代碼爲能夠刪除元素,它不是在嵌套循環,但無法除去正處於嵌套循環中移除的元素。
有沒有其他解決方案來解決這個問題?