2019-01-30
閱讀量:
791
python 變量作用域問題的不理解
python變量作用域問題的不理解
a = 5
def fun():
a += 3
print(a)
fun()
報錯:
# UnboundLocalError: local variable 'a' referenced before assignment
答:
在 python 中 a += 3 其實就是a = a + 3此時 相當于在函數(shù)內(nèi)部聲明了變量 a, 所以是調(diào)用不到外部的a的。如果想調(diào)用外部的變量 a 需要這樣修改代碼:
a = 5
def fun():
global a
a += 3
print(a)
fun()
在ipython中執(zhí)行結(jié)果如下:

此時 全局變量a已經(jīng)被修改







評論(0)


暫無數(shù)據(jù)
推薦帖子
0條評論
0條評論
0條評論