from itertools import count
factors = [2, 3, 5, 7]
# 找出不是2,3,5,7倍數的值
G = (i for i in count() if all(i % n > 0 for n in factors))
# print([i for i in G if i>40]) # 這注釋的兩句沒報錯,就是卡
# print(list(G))
for val in G:
print(val, end=' ')
if val > 40: break
uj5u.com熱心網友回復:
n = 50if(not(n%2==0 or n%3==0 or n%5==0 or n%7==0)):
print(n)
uj5u.com熱心網友回復:
你沒有給G加一個范圍,這樣G的陣列就是無限大,就無法顯示出來,如果到10000就不找了,那么注釋的兩句就會很快就有結果的。。如果對你有幫助,還請給下分。。
uj5u.com熱心網友回復:
from itertools import count
factors = [2, 3, 5, 7]
# 找出不是2,3,5,7倍數的值
G = (i for i in range(1000) if all(i % n > 0 for n in factors))
print([i for i in G if i>40]) # 這注釋的兩句沒報錯,就是卡
print(list(G))
for val in G:
print(val, end=' ')
if val > 40: break
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/132424.html
上一篇:求兩數之和,對了嗎
