四行代碼帶你認清Python變量作用域

直接上代碼

count = 0

def add():
   count += 10
   
add()

會報錯!
原因是:Python 不允許函數修改不在函數作用域內的變量。全程就只有一個外部變量count。
我們修改一下代碼

count = 0

def add(count):
    return count += 10
    
count = add(count)

這種是可以的,分的很清楚,外部變量是外部變量(第一行的count),內部變量是內部變量(add函數內的count)。


但是
上面的原則僅適用於整數和字符串
列表、字典、集合、類中可以在子程序(子函數)中通過修改局部變量達到修改全局變量的目的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章