Bonjour,

Désirant générer la liste suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
[(2, 0), (3, 0), (4, 0), (2, 1), (3, 1), (4, 1), (2, 2), (3, 2), (4, 2), (2, 3), (3, 3), (4, 3)]
j'ai essayé le module product d'itertools :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
from itertools import product
def construire1():        
        return list(product(range(2,5), range(4)))
print(construire1())
mais cela me donne:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
[(2, 0), (2, 1), (2, 2), (2, 3), (3, 0), (3, 1), (3, 2), (3, 3), (4, 0), (4, 1), (4, 2), (4, 3)]
J'aurai aimé utiliser directement un 'outil' d'itertools.

J'ai trouvé cela pour trier ma liste :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
from operator import itemgetter
l1 = construire1()
l1.sort(key=itemgetter(1))
print(l1)
Bien sûr, je peux aussi utiliser la méthode suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
def construire2():
    maliste = []
    for j in range(4):        
        for i in range(2,5):
            a = (i,j)
            maliste.append(a)
    return maliste
print(construire2())
[(2, 0), (3, 0), (4, 0), (2, 1), (3, 1), (4, 1), (2, 2), (3, 2), (4, 2), (2, 3), (3, 3), (4, 3)]
mais ce n'est pas mon questionnement.

Quelqu'un peut-il m'aider ?