Holistische conversielus
Een lijst met alle mogelijke Pokémon-typen is in je sessie geladen als pokemon_types. Voor het gemak is die al in de console afgedrukt.
Je wilt alle mogelijke paren van Pokémon-typen verzamelen. Je wilt elk van deze paren opslaan in een losse lijst, met een genummerde index als eerste element van elke lijst. Zo kun je het totale aantal mogelijke paren zien en heeft elk paar een gelabelde index.
De onderstaande lus is geschreven om deze taak uit te voeren:
enumerated_pairs = []
for i,pair in enumerate(possible_pairs, 1):
enumerated_pair_tuple = (i,) + pair
enumerated_pair_list = list(enumerated_pair_tuple)
enumerated_pairs.append(enumerated_pair_list)
Laten we deze lus efficiënter maken met een holistische conversie.
Deze oefening maakt deel uit van de cursus
Efficiënte Python-code schrijven
Oefeninstructies
combinationsuit de moduleitertoolsis in je sessie geladen. Gebruik dit om een lijstpossible_pairste maken die alle mogelijke paren van Pokémon-typen bevat (elk paar heeft2Pokémon-typen).- Maak boven de for-lus een lege lijst
enumerated_tuplesaan. - Gebruik een ingebouwde functie om elke tuple in
enumerated_tuplesom te zetten naar een lijst.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Collect all possible pairs using combinations()
possible_pairs = [*____(pokemon_types, ____)]
# Create an empty list called enumerated_tuples
____ = ____
for i,pair in enumerate(possible_pairs, 1):
enumerated_pair_tuple = (i,) + pair
enumerated_tuples.append(enumerated_pair_tuple)
# Convert all tuples in enumerated_tuples to a list
enumerated_pairs = [*____(____, enumerated_tuples)]
print(enumerated_pairs)