python中global的用法
生活随笔
收集整理的這篇文章主要介紹了
python中global的用法
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
python變量的作用域:
- Local 局部作用域
- Enclosing 閉包函數(shù)外的函數(shù)中
- Global全局作用域
查找規(guī)則:以Local->Enclosing ->Global規(guī)則查找,即:同名變量,優(yōu)先引用的是局部變量,在局部找不到,便會去局部外的局部找(例如閉包),再找不到就會去全局找。
global關(guān)鍵字
x = 5 def fun_a():print(x)def fun_b():x = x + 1print(x) fun_a() # 5 fun_b() #報錯因為內(nèi)部函數(shù)有引用外部函數(shù)的同名變量或者全局變量,并且對這個變量有修改的時候,此時 Python 會認(rèn)為它是一個局部變量,而函數(shù)中并沒有 x 的定義和賦值,所以報錯。
global 關(guān)鍵字為解決此問題而生,在下面函數(shù) fun_c中,顯示地告訴解釋器 x 為全局變量,然后會在函數(shù)外面尋找 x 的定義,執(zhí)行完 x = x + 1 后,x 依然是全局變量。
x = 5 def fun_c():global x #global 聲明全局變量 xx = x + 1print(x) fun_c() # 6總結(jié)
以上是生活随笔為你收集整理的python中global的用法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: git 推送本地分支到远程分支 git
- 下一篇: python3 os模块