您好,登錄后才能下訂單哦!
今天小編給大家分享的是python全局變量和局部變量有什么區(qū)別,相信很多人都不太了解,為了讓大家更加了解python全局變量和局部變量,所以給大家總結(jié)了以下內(nèi)容,一起往下看吧。一定會有所收獲的哦。
python全局變量和局部變量的區(qū)別
全局變量和局部變量的區(qū)別在于作用域,全局變量在整個py文件中聲明,全局范圍內(nèi)可以使用;局部變量是在某個函數(shù)內(nèi)部聲明的,只能在函數(shù)內(nèi)部使用,如果超出使用范圍(函數(shù)外部),則會報錯。
#!/usr/bin/python3 # -*- coding: utf-8 -*- A = 100 # 全局變量一般用大寫字母表示 def func(): a = 50 # 局部變量一般用小寫字母表示 print(a+A) func() print(A) print(a) # 報錯信息NameError: name 'a' is not defined
#!/usr/bin/python3 # -*- coding: utf-8 -*- A = 100 def func(): A=250 print(A) print(A) # 打印全部變量 func() # 局部變量
如果想在函數(shù)內(nèi)部改變?nèi)肿兞浚枰谇懊婕由蟝lobal關(guān)鍵字,在執(zhí)行函數(shù)之后,全局變量值也會改變。
#!/usr/bin/python3 # -*- coding: utf-8 -*- A = 100 def func(): global A A = 200 print(A) print(A) # 打印全局變量 func() # 局部變量 print(A) # 改變后的全局變量
如果全局變量是列表類型,可以通過list的列表方法去對列表進(jìn)行修改,并且可以不用global來聲明。
list_1 = [1,2,56,"list"] def changeList(): list_1.append("over") print(list_1) changeList() print(list_1)
在函數(shù)內(nèi)部,如果局部變量與全局變量變量名一樣,則優(yōu)先調(diào)用局部變量。
關(guān)于python全局變量和局部變量有什么區(qū)別就分享到這里了,當(dāng)然并不止以上和大家分析的辦法,不過小編可以保證其準(zhǔn)確性是絕對沒問題的。希望以上內(nèi)容可以對大家有一定的參考價值,可以學(xué)以致用。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。