Вопрос по python – Python: переменные не переназначаются

1

Почему переменные ниже (A, B, C, D) не изменились, когдаtst называется.

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)

Ваш Ответ

2   ответа
6

в def tst () вы создаете локальные переменные A, B и C и присваиваете им новые значения.

если вы хотите присвоить глобальные значения A, B и C, используйте ключевое слово global.

1

tst методlocalто есть они ссылаются на разные значения, которые существуют только внутри области действия этого метода. Используйте ключевое словоglobal (как вglobal A,B,C,D) внутриtst исправить поведение. См примерВот и вопросВот.

Похожие вопросы