Python中的全局變量和局部變量


全局變量與局部變量兩者的本質區別就是在於作用域

用通俗的話來理解的話,全局變量是在整個py文件中聲明,全局范圍內都可以訪問。

局部變量是在某個函數中聲明的,只能在該函數中調用它,如果試圖在超出范圍的地方調用,程序就爆掉了

如果在函數內部定義與某個全局變量一樣名稱的局部變量,就可能會導致意外的效果,可能不是你期望的。因此不建議這樣使用,這樣會使得程序很不健全。

盡量少用全局變量,因為它可以在其他函數中被修改。

如果全局變量是list、字典、集合,修改的話是不需要聲明的,可直接修改。

如果是字符串、int、float、元組,需要聲明global,才能修改。

 

name='xiaoming' #全局變量
stus=[]  #全局變量
#如果全局變量是list、字典、集合,修改的話是不需要聲明的,可直接修改
#字符串、int、float、元組,需要聲明global

def a():
    global name #聲明全局變量,在修改后,即可修改全局變量
    stus.append('abc')
    name='hhh'
    print(name)  #調用時輸出: hhh


def b():
    print(stus) #調用時輸出: ['abc']
    print(name) #調用時輸出: hhh
    age=18
    print(age)

a()
b()

#調用a和b輸出的結果如下:
# hhh
# ['abc']
# hhh
# 18

 

 

更多小栗子,請參考:

https://www.cnblogs.com/Archmage/p/7569817.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM