Python函數(shù)中的全局變量詳解
1、什么是全局變量?
在Python中,全局變量指的是可以作用于函數(shù)內(nèi)部和外部的變量。
在這里有兩種情況:在函數(shù)的外部定義和內(nèi)部定義添加global關(guān)鍵詞變成全局變量。
2、在函數(shù)外部定義的變量是全局變量。
假設(shè)一個變量在函數(shù)的外部定義,那么這個函數(shù)就可以在函數(shù)的內(nèi)部訪問,也可以在函數(shù)的外部的訪問。
示例:定義一個全局變量b,然后定義一個函數(shù)a,最后在該函數(shù)的內(nèi)部和外部輸出全局變量m的值,??代碼??如下:
b = '我愛Python,我在學(xué)習(xí)Python!' # 定義全局變量 def a(): # 定義函數(shù) print('函數(shù)內(nèi)部全局變量b=',b) # 在函數(shù)內(nèi)部輸出全局變量 a() print('函數(shù)外部全局變量b=',b) # 在函數(shù)外部輸出全局變量
運行結(jié)果如下:
函數(shù)內(nèi)部全局變量b= 我愛Python,我在學(xué)習(xí)Python! 函數(shù)外部全局變量b= 我愛Python,我在學(xué)習(xí)Python! >>>
3、在函數(shù)內(nèi)部定義中添加global關(guān)鍵詞后變成全局變量。
在Python中,內(nèi)部定義的函數(shù)中,添加關(guān)鍵詞global后,改變量就變成了全局變量。在函數(shù)的外部也可以訪問到該變量,同時還可以在函數(shù)的內(nèi)部進行修改。
示例:定義相同名稱不同內(nèi)容的全局變量和局部變量b,并輸出它們的值:
b = '我愛Python,我在學(xué)習(xí)Python!' # 定義全局變量 print('函數(shù)外部全局變量b=',b) # 在函數(shù)外部輸出全局變量 def a(): # 定義函數(shù) b = '人生苦短,我用Pyhon!' # 定義局部變量 print('函數(shù)內(nèi)部局部變量b=',b) # 在函數(shù)內(nèi)部輸出全局變量 a() # 調(diào)用函數(shù) print('函數(shù)外部全局變量b=',b) # 在函數(shù)外部輸出全局變量
運行結(jié)果如下:
函數(shù)外部全局變量b= 我愛Python,我在學(xué)習(xí)Python! 函數(shù)內(nèi)部局部變量b= 人生苦短,我用Pyhon! 函數(shù)外部全局變量b= 我愛Python,我在學(xué)習(xí)Python! >>>
從上面的結(jié)果可以看出,內(nèi)部變量(局部變量)可以和外部變量(全局變量)重名,不影響全局變量的值。
當(dāng)然在函數(shù)內(nèi)部變量前面添加關(guān)鍵字global,就變成了全局變量了,代碼如下:
b = '我愛Python,我在學(xué)習(xí)Python!' # 定義全局變量 print('函數(shù)外部全局變量b=',b) # 在函數(shù)外部輸出全局變量 def a(): # 定義函數(shù) global b # 添加global關(guān)鍵字 b = '人生苦短,我用Pyhon!' # 定義局部變量 print('函數(shù)內(nèi)部全局變量b=',b) # 在函數(shù)內(nèi)部輸出全局變量 a() # 調(diào)用函數(shù) print('函數(shù)外部全局變量b=',b) # 在函數(shù)外部輸出全局變量
運行結(jié)果如下:
函數(shù)外部全局變量b= 我愛Python,我在學(xué)習(xí)Python! 函數(shù)內(nèi)部全局變量b= 人生苦短,我用Pyhon! 函數(shù)外部全局變量b= 人生苦短,我用Pyhon! >>>
從上面的結(jié)果可以看出,在函數(shù)的內(nèi)部也可以修改全局變量的值。
總結(jié)
到此這篇關(guān)于Python函數(shù)中的全局變量詳解的文章就介紹到這了,更多相關(guān)Python全局變量內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于tensorflow和keras版本的對應(yīng)關(guān)系
這篇文章主要介紹了關(guān)于tensorflow和keras版本的對應(yīng)關(guān)系,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-06-06python中的生成器實現(xiàn)周期性報文發(fā)送功能
本文主要介紹了python中的生成器實現(xiàn)周期性報文發(fā)送功能,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03Jupyter notebook遠程訪問服務(wù)器的方法
今天小編就為大家分享一篇Jupyter notebook遠程訪問服務(wù)器的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-05-05