Nyckelargument med variabel storlek
Nu går vi vidare till nyckelargument med variabel storlek! Din uppgift är att definiera funktionen key_types(). Den ska ta ett valfritt antal nyckelargument och returnera en ny ordbok: nycklarna är unika objekttyper för de argument som skickas till key_types(), och de tillhörande värdena är listor. Varje lista ska innehålla de argumentnamn som har den typ som definieras av nyckeln (t.ex. anropet key_types(kwarg1='a', kwarg2='b', kwarg3=1) ger resultatet {<class 'int'>: ['kwarg3'], <class 'str'>: ['kwarg1', 'kwarg2']}).
För att hämta typen hos ett objekt använder du funktionen type() (t.ex. är type(1) av typen int).
Den här övningen är en del av kursen
Öva på kodningsintervjufrågor i Python
Övningsinstruktioner
- Definiera funktionen med ett godtyckligt antal nyckelargument.
- Iterera över nyckel-värde-par.
- Uppdatera listan som är associerad med en nyckel.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Define the function with an arbitrary number of arguments
def key_types(____):
dict_type = dict()
# Iterate over key value pairs
for key, value in kwargs.____:
# Update a list associated with a key
if ____(____) in ____:
dict_type[____].____
else:
dict_type[____] = [____]
return dict_type
res = key_types(a=1, b=2, c=(1, 2), d=3.1, e=4.2)
print(res)