BaşlayınÜcretsiz başlayın

Değişken uzunlukta anahtar sözcüklü argümanlar (**kwargs) ile fonksiyonlar

Esnek argümanlar konusunu biraz daha ilerletelim — *args kullandın, şimdi de **kwargs kullanacaksın! **kwargs'ı farklı kılan, fonksiyonlara değişken sayıda anahtar sözcüklü argüman geçirmene izin vermesidir. Önceki videodan hatırlarsan, fonksiyon tanımı içinde kwargs bir sözlüktür.

Bu fikri daha iyi anlamak için, bu egzersizde değişken sayıda anahtar sözcüklü argüman kabul eden bir fonksiyon tanımlamak üzere **kwargs kullanacaksın. Fonksiyon, bir filmdeki bir karakterin durumunu yazdıran basit bir durum raporu sistemini simüle eder.

Bu egzersiz, kursun bir parçasıdır

Python'da Fonksiyonlara Giriş

Kursa Göz Atın

Egzersiz talimatları

  • Fonksiyon adını report_status olacak şekilde fonksiyon başlığını tamamla. Tek bir esnek argüman **kwargs kabul eder.
  • kwargs içindeki anahtar-değer çiftleri üzerinde yineleyerek anahtarları ve değerleri iki nokta ':' ile ayrılmış şekilde yazdır.
  • report_status()'un ilk çağrısında şu anahtar-değer çiftlerini geçir: name="luke", affiliation="jedi" ve status="missing".
  • report_status()'un ikinci çağrısında şu anahtar-değer çiftlerini geçir: name="anakin", affiliation="sith lord" ve status="deceased".

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

# Define report_status
def ____(____):
    """Print out the status of a movie character."""

    print("\nBEGIN: REPORT\n")

    # Iterate over the key-value pairs of kwargs
    for ____, ____ in kwargs.items():
        # Print out the keys and values, separated by a colon ':'
        print(____ + ": " + ____)

    print("\nEND REPORT")

# First call to report_status()


# Second call to report_status()
report_status(name=____, affiliation=____, status=____)
Kodu Düzenle ve Çalıştır