CommencerCommencer gratuitement

Boucle de conversion holistique

Une liste de tous les types de Pokémon possibles a été chargée dans votre session à l'adresse pokemon_types. Elle a été imprimée dans la console pour plus de commodité.

Vous souhaitez rassembler toutes les paires 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 voir le nombre total de paires possibles et fournit une étiquette indexée pour chaque paire.

La boucle ci-dessous a été écrite 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)

Rendons cette boucle plus efficace en utilisant une conversion holistique.

Cet exercice fait partie du cours

Écrire du code Python efficace

Afficher le cours

Instructions

  • combinations du module itertools a été chargé dans votre session. Utilisez-le pour créer une liste appelée possible_pairs qui contient toutes les paires possibles de types de Pokémon (chaque paire a 2 types de Pokémon).
  • Créez une liste vide appelée enumerated_tuples au-dessus de la boucle for.
  • Utilisez une fonction intégrée pour convertir chaque tuple de enumerated_tuples en 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)
Modifier et exécuter le code