örneğin: assginment ifadesi yeni bir yerel değişken bildirecektir. Ben fonk1 kapsamında değişken foo nasıl değiştirebileceğiniziPython, üst kapsamdaki bir değişkenin değerini nasıl değiştirebilirim?
def func2():
global foo
foo = 'global changed in func2' #changed the foo value in global scope
: Küresel içinde foo kullanacak
foo = 'global'
def func1():
foo = 'func1'
def func2():
foo = 'local variable in func2'
kullanımı küresel beyan?
Yardımlarınız için teşekkürler.
Düzenleme:
teşekkür ederiz Brandon Craig Rodos, sonunda kendine anlamını anlamak.
İç içe 3'ten fazla kapsam varsa, değişkeni bir listede saklayabilirim.
foo = ['global', 'function1', 'function2']
def func1():
foo[1] = 'func1'
def func2():
foo[2] = 'func2'
foo[1] = 'func1 modified in func2'
Sadece bir global değişkeni kullanıyorum aslında. iki işlev iç içe varsa
yüzden biz
nonlocal foo
ve iç içe üçten fazla fonksiyon varsa
global foo
,
ve her fonksiyon kullanımı değişkenleri kullanabilirsiniz Diğer işlevler kapsamında, genel bir liste değişkeni neden bildirmiyoruz?
Yardımlarınız için teşekkür ederiz!
Teşekkürler, bu gerçekten yardımcı oldu. ama sadece hayal gücünde, iç içe 3'ten fazla fonksiyon varsa, daha fazla yardımcı olur musunuz lütfen? Teşekkürler. – netroyal
Teşekkürler. Sonunda anlamın ne olduğunu anladım. İç içe ikiden fazla işlev varsa, her değeri foo [0] foo [1] foo [2] öğesinde saklamak için foo [1, 2, 3] 'ü kullanabilirsiniz. Tekrar teşekkürler! – netroyal