Menu
CoddyTech

Özet - Alışveriş Sepeti Hataları

Coddy'nin Python Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 66 / 78.

challenge icon

Görev

Orta

Hata işleme özelliğine sahip bir alışveriş sepetini simüle eden bir program oluştur. Görevin:

  1. Müşteri siparişlerini işleyen handle_shopping_cart adlı bir işlev oluşturmak
  2. İşlev, "item:quantity" biçimindeki sipariş dizelerinden oluşan bir listeyi kabul etmelidir
  3. Her siparişi şu şekilde işle:
    • Ögeyi ve miktarı almak için giriş dizesini bölmek
    • Miktarı bir tamsayıya dönüştürmek
    • Ögeyi, miktarı değer olacak şekilde bir alışveriş sepeti sözlüğüne eklemek
    • Bir öge sepette zaten varsa yeni miktarı mevcut miktarına eklemek
  4. Şu özel hataları ele al:
    • Giriş biçimi yanlışsa (iki nokta eksikse) "Invalid format: {order}" yazdır
    • Miktar geçerli bir sayı değilse "Invalid quantity: {order}" yazdır
    • Miktar negatifse "Negative quantity not allowed: {order}" yazdır
  5. Tamamlanmış alışveriş sepeti sözlüğünü döndürmek

Biçimi ve negatif miktarı bir if ile kontrol et. Yalnızca miktarı bir tamsayıya dönüştürmek hata oluşturabilir; bu nedenle except ValueError, "Invalid quantity: {order}" ifadesinin yazdırıldığı yerdir. Son except Exception as e bloğunu bir güvenlik ağı olarak koru ve orada "Unexpected error: {e}" yazdır.

Kendin dene

def handle_shopping_cart(orders):
    # Alışveriş sepeti için boş bir sözlük oluştur
    cart = {}

    # Listedeki her siparişi işle
    for order in orders:
        try:
            # Siparişi ayır, formatı ve miktarı kontrol et, sonra sepete ekle
            pass

        except ValueError:
            # Miktar bir sayı değildi
            pass

        except Exception as e:
            # Beklenmeyen herhangi bir şey
            pass

    # Tamamlanmış sepeti döndür
    return cart

Mantık ve Akış bölümündeki tüm dersler

Kendi başına pratik yap: Online Python derleyicisi