PYTHON · DERS 03
Listeler ve append
Bir e-ticaret raporunda iade edilen siparişleri ayırıp geçerli satışları yeni bir listede toplayacaksın. Bu örnekte pozitif tutarlar satış, negatif tutarlar iade, sıfır ise rapor dışında kalan kayıttır.
1. Listeyi oluştur, elemanı sona ekle
valid = [] boş bir liste oluşturur. valid.append(amount) tek bir tutarı listenin sonuna ekler ve var olan değerleri korur.
valid = []
valid.append(120)
valid.append(50)
print(valid) # [120, 50]append listeyi yerinde değiştirir ve None döndürür. Bu yüzden valid = valid.append(120) yazarsan valid artık liste olmaz.
2. Satışları seç
orders = [120, -20, 0, 50]
valid = []
for amount in orders:
if amount > 0:
valid.append(amount)
print(valid)İlk turda 120 eklenir. −20 ve 0 koşulu geçemez, liste aynı kalır. Son turda 50 eklenir. Sonuç [120, 50].
3. Laboratuvarda hatayı bul
Başlangıç kodu sıfırı da seçiyor. Önce hangi turda yanlış değerin eklendiğini tahmin et. Koşulu düzelt, sonra boş ve yalnızca iade içeren listelerin testlerini kontrol et.
Ders 3 laboratuvarını aç →Junior veri analisti mülakat sorusu
Bir aday valid = valid.append(amount) yazıyor. İlk eklemeden sonra valid ne olur? Bir sonraki eklemede hangi hata oluşur?
Örnek yanıtı aç
İlk append listeyi değiştirir ama dönüşü None olduğu için atama valid değişkenini None yapar. Sonraki append çağrısı AttributeError verir. Atamayı kaldırır, valid.append(amount) kullanırım. Karışık kayıtlar ve hiç geçerli satış olmayan bir listeyle test ederim.