今天小編給大家分享的是python全局變量和局部變量有什么區(qū)別,相信很多人都不太了解,為了讓大家更加了解python全局變量和局部變量,所以給大家總結了以下內容,一起往下看吧。一定會有所收獲的哦。
python全局變量和局部變量的區(qū)別
全局變量和局部變量的區(qū)別在于作用域,全局變量在整個py文件中聲明,全局范圍內可以使用;局部變量是在某個函數(shù)內部聲明的,只能在函數(shù)內部使用,如果超出使用范圍(函數(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ù)內部改變全局變量,需要在前面加上global關鍵字,在執(zhí)行函數(shù)之后,全局變量值也會改變。
#!/usr/bin/python3 # -*- coding: utf-8 -*- A = 100 def func(): global A A = 200 print(A) print(A) # 打印全局變量 func() # 局部變量 print(A) # 改變后的全局變量
如果全局變量是列表類型,可以通過list的列表方法去對列表進行修改,并且可以不用global來聲明。
list_1 = [1,2,56,"list"] def changeList(): list_1.append("over") print(list_1) changeList() print(list_1)
在函數(shù)內部,如果局部變量與全局變量變量名一樣,則優(yōu)先調用局部變量。
關于python全局變量和局部變量有什么區(qū)別就分享到這里了,當然并不止以上和大家分析的辦法,不過小編可以保證其準確性是絕對沒問題的。希望以上內容可以對大家有一定的參考價值,可以學以致用。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。