日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

python中的全局变量与局部变量

發(fā)布時間:2025/4/9 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python中的全局变量与局部变量 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

  全局變量與局部變量兩者的本質(zhì)區(qū)別就是在于作用域,全局變量即在整個程序中,任何地方都可以訪問。而局部變量,試著在函數(shù)內(nèi)部聲明的變量,當(dāng)函數(shù)運行結(jié)束時,局部變量就會被內(nèi)存釋放。

例子:

1 name='zs' 2 def change(): 3 name='ls' 4 change() 5 print(name) #輸出為:’zs' 函數(shù)內(nèi)的name是一個局部變量,函數(shù)運行結(jié)束即消失

如果要修改全局變量,要在函數(shù)內(nèi)部用關(guān)鍵字global聲明。

1 name='zs' 2 def change(): 3 global name 4 name='ls' 5 change() 6 print(name) #輸出為 ls

其實局部變量是有層次的,如果出現(xiàn)函數(shù)的嵌套,內(nèi)層函數(shù)想調(diào)用外層的變量是,是不能用global聲明的,因為外層的變量不叫全局變量。這時候如果想修改外層的變量,就得用到一個新的關(guān)鍵字:nonlocal??

?

#強行使用global變量會報錯,下面代碼可以自己運行試試def fun():a = 3def fun2():global aa*= 2print(a)return fun2() fun()

?

?如果使用nonlocal就可以完美解決:

1 def fun(): 2 a = 3 3 4 def fun2(): 5 nonlocal a 6 a*= 2 7 print(a) 8 9 return fun2() 10 fun() #輸出 6

?

轉(zhuǎn)載于:https://www.cnblogs.com/linshuhui/p/8977756.html

總結(jié)

以上是生活随笔為你收集整理的python中的全局变量与局部变量的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。