Bonjour,
Pourriez vous m'expliquer s'il vous plait la différence dans le code entre a = 2 et a = a + 1
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
26
27
28
29
30 >>> a = 1 >>> def f(): ... return a ... #La variable est accessible dans la function a >>> f() 1 >>> def f(): ... return a + 1 ... >>> f() 2 # On peut affecter la valeur 2 à a mais à l'exterieur de la fonction a reste egal a 1 >>> def f(): ... a = 2 ... return a ... >>> f() 2 # Ca ressemble à a = 2 mais pour ce cas Python remonte une erreur, je comprends pas la vrai différence entre a = 2 et a = a + 1 >>> def f(): ... a = a + 1 ... return a ... >>> f() Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<stdin>", line 2, in f UnboundLocalError: local variable 'a' referenced before assignment
Partager