Reputation: 4802
Why aren't the variables below (A,B,C,D) changed when tst is called.
A,B,C = 0,0,0
D = 0
def tst():
A,B,C = 1,2,3
D = 4
print(A,B,C,D)
tst() # tst is called
print(A,B,C,D)
Output:
(1, 2, 3, 4)
(0, 0, 0, 0)
Upvotes: 1
Views: 109
Reputation: 14565
because of Python scoping rules.
in def tst(), you're creating local variables A, B, and C, and assigning them new values.
if you wish to assign to the global A,B, and C values, use the global keyword.
Upvotes: 6