python全域性變數的用法詳解

2021-10-23 01:18:02 字數 1810 閱讀 4428

一段時間沒有使用python來寫**,就發現以前學習的很多語法都忘了。看來還是當初這方面的專案做的好不夠多,沒有系統性的運用和學習,導致了很多語法不能順手拈來。在接下來的這個專案中,

一定要把遇到的一些python知識不熟悉的地方還有遺忘的重新梳理一下,對python要達到靈活運用的境界,不能單純是能敲**,要達到學,做,教的三者合一。就是在做中學,學中做,做中教,教中學的

境界。全域性變數的作用域:

一般在函式體外定義的變數成為全域性變數,在函式內部定義的變數稱為區域性變數。全域性變數所有作用域都可用,區域性變數只能在本函式可用,變數的使用順序是,區域性變數 > 全域性變數, 也就是說:優先使用區域性變數

global關鍵字:

為了解決函式內使用全域性變數的問題,python增加了global關鍵字, 利用它的特性, 可以指定變數的作用域。

global關鍵字的作用:宣告變數var是全域性的

例項一:函式內賦值不能改變全域性變數值:

global val

val = 10

def test1():

global val

val = 5

print(『test1 global val:』,val)

def test2():

val = 8

print(『test2 global val:』,val)

class test():

definit(self):

#global val

val = 5

#zoo()

#xy()

def connect(self):

print(「class in connect global val:」,val)

if 5 == val:

print(「global val is:」,val)

ifname==「main」:

test().connect()

執行結果:

class in connect global val: 10

可以看出,函式內賦值並不能改變全域性變數的值,所以需要global關鍵字

例項二:全域性變數值改變必須要有global關鍵字:

def test1():

global val

val = 5

print(『test1 global val:』,val)

def test2():

val = 8

print(『test2 global val:』,val)

class test():

definit(self):

#global val

val = 5

test1()

test2()

def connect(self):

print(「class in connect global val:」,val)

if 5 == val:

print(「global val is:」,val)

ifname==「main」:

test().connect()

測試結果:

test1 global val: 5

test2 global val: 8

class in connect global val: 5

global val is: 5

可以看出,全域性變數的值改變,必須要有global關鍵字。不然就被當成了區域性變數。這點一定要記好。

python全域性變數的用法詳解

一段時間沒有使用python來寫 就發現以前學習的很多語法都忘了。看來還是當初這方面的專案做的好不夠多,沒有系統性的運用和學習,導致了很多語法不能順手拈來。在接下來的這個專案中,一定要把遇到的一些python知識不熟悉的地方還有遺忘的重新梳理一下,對python要達到靈活運用的境界,不能單純是能敲 ...

python中全域性變數的用法

在python中,全域性變數一般有兩種使用方式 第一種 是在乙個單獨的模組中定義好,然後在需要使用的全域性模組中將定義的全域性變數模組匯入。第二種 直接在當前的模組中定義好,然後直接在本模組中通過global宣告,然後使用 具體的方法如下所示 第一種 solr url def tt global s...

Python定義全域性變數的用法

全域性變數是程式語言中常見的一種變數,通過全域性定義,可以是某物件函式建立,也可以是本程式任何位置建立,能夠被本程式中的所有物件或函式進行引用,全域性變數的定義有利於程式的變數共享,簡化了新增和修改的程式。和c語言一樣,python也具有全域性變數,其定義全域性變數的用法有兩種 1.宣告法 該方法是...