Python09-04_函式----變數的作用域(全域性變數和區域性變數)
阿新 • • 發佈:2020-09-09
變數的作用域(全域性變數和區域性變數)
變數起作用的範圍叫做變數的作用域,不同作用域內同名變數之間互不影響。變數分為:全域性變數和區域性變數
全域性變數:
- 在函式的類定義之外宣告的變數。作用域為定義的模組,從定義位置開始直到模組結束。
- 全域性變數降低了函式的通用性和可讀性。應儘量避免全域性變數的使用。
- 全域性變數一般當成常量使用。
- 函式內要改變全域性變數的值,使用global宣告一下
區域性變數:
- 在函式體中(包含形式引數)宣告的變數。
- 區域性變數的引用比全域性變數快,優先考慮使用。
- 如果區域性變數和全域性變數同名,則在函式內隱藏全域性變數,只使用同名的區域性變數。
輸出列印區域性變數:locals()
輸出列印全域性變數:globals()
1 a = 3 2 def text01(): 3 b = 4 4 print(b*10) 5 global a 6 a = 300 7 8 print(locals()) 9 print(globals()) 10 11 text01() 12 print(a)