Bonjour,
j'ai un canvas composé de rectangles contenant chacun une valeur booléenne (ici VRAI ou FAUX).
exemple :
Je voudrai récupérer les valeurs des lignes ou des colonnes sous forme de listes.VRAI - FAUX - VRAI - FAUX
VRAI - FAUX - VRAI - FAUX
VRAI - FAUX - VRAI - FAUX
FAUX - FAUX - VRAI - FAUX
exemple par ligne :
exemple par colonne :[[VRAI, FAUX, VRAI, FAUX], [VRAI, FAUX, VRAI, FAUX],[VRAI, FAUX, VRAI, FAUX],[FAUX, FAUX, VRAI, FAUX]]
J'ai donc écrit le code suivant :[[VRAI, VRAI, VRAI, FAUX], [FAUX, FAUX, FAUX, FAUX],[VRAI, VRAI, VRAI, VRAI],[FAUX, FAUX, FAUX, FAUX]]
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 def Listage(evt) : listeMatrice[:]=[] listeMatrice2=[] myLenght = int(len(items2)) for x in range(0,myLenght): #listeMatrice.append(listeMatrice2) listeMatrice2[:]=[] for y in range(0,myLenght): myT = can.itemcget(items2[x][y],'text') print(" x = "+str(x)+" et y = "+str(y)+" = "+str(myT)) myT2 = " x = "+str(x)+" et y = "+str(y)+" = "+str(myT) listeMatrice2.append(myT2) if y==myLenght-1: listeMatrice.append(listeMatrice2) print(listeMatrice)
et j'obtiens le résultat suivant :
x = 0 et y = 0 = VRAI
x = 0 et y = 1 = FAUX
x = 0 et y = 2 = VRAI
x = 0 et y = 3 = FAUX
x = 1 et y = 0 = VRAI
x = 1 et y = 1 = FAUX
x = 1 et y = 2 = VRAI
x = 1 et y = 3 = FAUX
x = 2 et y = 0 = VRAI
x = 2 et y = 1 = FAUX
x = 2 et y = 2 = VRAI
x = 2 et y = 3 = FAUX
x = 3 et y = 0 = FAUX
x = 3 et y = 1 = FAUX
x = 3 et y = 2 = VRAI
x = 3 et y = 3 = FAUX
[[' x = 3 et y = 0 = FAUX', ' x = 3 et y = 1 = FAUX', ' x = 3 et y = 2 = VRAI', ' x = 3 et y = 3 = FAUX'], [' x = 3 et y = 0 = FAUX', ' x = 3 et y = 1 = FAUX', ' x = 3 et y = 2 = VRAI', ' x = 3 et y = 3 = FAUX'], [' x = 3 et y = 0 = FAUX', ' x = 3 et y = 1 = FAUX', ' x = 3 et y = 2 = VRAI', ' x = 3 et y = 3 = FAUX'], [' x = 3 et y = 0 = FAUX', ' x = 3 et y = 1 = FAUX', ' x = 3 et y = 2 = VRAI', ' x = 3 et y = 3 = FAUX']]
la 1ère ligne donne :
Pourriez-vous me dire, svp, comment faire pour avoir le bon résultat qui est :[FAUX, FAUX, VRAI, FAUX]
Merci de votre aide,[VRAI, FAUX, VRAI, FAUX]
Cordialement,
Arsène
Partager