Salut,
Dans le cadre d'une liste ou d'un tuple s'occupant de coordonnées, y a t il une utilité à vouloir faire de l'assignement conditionnel et comment s'y prendre ?
La deuxième solution semble plus lente mais je m'y prends peut-être mal ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 >>>xy=[0,9] #or (0,9) >>> #Basique : >>> if xy[1]+1<10: xy[1]+=1 #or xy=xy[0],xy[1]+1 >>> #Moins basique : >>> if (y:=xy[1]+1)<10: xy[1]=y #or xy=xy[0],y
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 >>> def test1(): xy = [0,9] if xy[1]+1<10: xy[1]+=1 >>> def test2(): xy = [0,9] if (y:=xy[1]+1)<10: xy[1]=y def test(): import time st = time.time() for i in range(10000000): test1() print('test1',time.time()-st) st = time.time() for i in range(10000000): test2() print('test2',time.time()-st)C'était une question loufoque de plus !
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 >>> test() test1 1.152806282043457 test2 1.2091920375823975 >>> test() test1 1.1500062942504883 test2 1.1826136112213135 >>> test() test1 1.1328635215759277 test2 1.2107679843902588 >>> test() test1 1.135441541671753 test2 1.1759612560272217 >>> test() test1 1.128035306930542 test2 1.2089295387268066 >>> test() test1 1.1322541236877441 test2 1.1997888088226318
Merci d'avance !
Partager