Bonsoir à tous,
J'aimerais économiser quelques octets de mon programme qui remplit une liste n*2 (une matrice n*2 quoi).
Mais cela ne fonctionne pas.
Voici la fonction qui fonctionne () :
Et voici comment je la modifie :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 from random import* def Numero1(n): L = [None]*n for i in range (n): L[i] = [None]*2 for k in range (n): x,y = randint(50,750),randint(50,750) L[k][0], L[k][1] = x,y print(L) Numero1(6)
Quand je compare les deux, cela remplit ma liste du même x et du même y () :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 from random import* def Numero2(n): L = [[None]*2]*n for k in range (n): x,y = randint(50,650),randint(50,650) L[k][0], L[k][1] = x,y print(L) Numero2(6)
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
17
18
19
20
21
22
23
24
25 from random import* def Numero1(n): L = [None]*n for i in range (n): L[i] = [None]*2 for k in range (n): x,y = randint(50,750),randint(50,750) L[k][0], L[k][1] = x,y print(L) def Numero2(n): L = [[None]*2]*n for k in range (n): x,y = randint(50,650),randint(50,650) L[k][0], L[k][1] = x,y print(L) Numero1(6) print() Numero2(6)
Partager