Python'da bir egzersiz yapmaya çalışıyorum ama sürekli takılıyorum.Bir listeden sayıların katlarını kaldırın - Python
Alıştırma: 2 ile 10,000 arasındaki tüm sayıları bir listeye ekleyen bir program yazın. Daha sonra 2 (2 değil) katlarını, 3 (3 değil) katlarını kaldırın, vb. 100'ün katları. Kalan değerleri yazdırın.
def main():
_list_ = []
for i in range(2, 10001):
_list_.append(i)
multiples = 0
multiple = 2
while multiples <= 10000:
multiples += 2
_list_.remove(multiples)
main()
Bu 2 kişilik tek çözüm ama çıkarmadan, ... ve 3 gibi diğerleri için nasıl yapacağız 3, 4, 5, ...?
Yardımlarınız için teşekkürler!
Merhaba ekleyebilir. [Nasıl iyi bir soru sormalıyım?] (Http://stackoverflow.com/help/how-to-ask) ve [Minimal, Tam ve Doğrulanabilir bir örnek nasıl oluşturulur] hakkında bilgi sahibi olmak isteyebilirsiniz. : //stackoverflow.com/help/mcve). –
Listeyi bir kümeye ve geri dönüşüme dönüştürme hakkında bilgi edinin. http://www.learnpython.org/en/Sets –
Bu gereksiz ara maddeyi her bir adım için listeler oluşturarak kesersek, bu oldukça kolay görünüyor: 'print ([eğer varsa aralıkta (2, 10001) numara] (aralıktaki değer için% değer veya değer == sayı (2, 101))]) ';-) – Matthias