Boucle de conversion globale
Une liste de tous les types de Pokémon possibles a été chargée dans votre session sous le nom pokemon_types. Elle a été affichée dans la console pour plus de commodité.
Vous souhaitez rassembler toutes les combinaisons possibles de types de Pokémon. Vous souhaitez stocker chacune de ces paires dans une liste individuelle avec un index énuméré comme premier élément de chaque liste. Cela vous permet de visualiser le nombre total de paires possibles et fournit une étiquette indexée pour chaque paire.
La boucle ci-dessous a été conçue pour accomplir cette tâche :
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)
Optimisons cette boucle à l'aide d'une conversion globale.
Cet exercice fait partie du cours
Écrire du code Python efficace
Instructions
combinationsdu moduleitertoolsa été chargé dans votre session. Utilisez-le pour créer une liste appeléepossible_pairsqui contient toutes les paires possibles de types de Pokémon (chaque paire comprend2types de Pokémon).- Créez une liste vide nommée
enumerated_tuplesau-dessus de la boucle for. - Utilisez une fonction intégrée pour convertir chaque tuple de
enumerated_tuplesen une liste.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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)