Python實現全域性變數的兩個解決方法

2022-09-18 16:30:15 字數 955 閱讀 2296

python實現全域性變數的兩個解決方法

本文針對python

的全域性變數實現方法簡述如下:

先來看下面一段測試程式: 

count = 0

def fuc(count):

print count

count = 1

for i in range(0, 10):

fuc(count)

執行結果是: 

>>>00

0000

0000

很顯然,這並不是我們想要的結果。

針對這一問題的解決方法就是採用全域性變數: 

global a

a = 3

def fuc():

global a

print a

a = a 1

if __name__ == "__main__":

global a

for i in range(10):

fuc()print

'hello'

print a

執行結果為: 

>>>34

5678

9101112

hello

13需要注意:**需要全域性變數,**宣告一下;但是函式千萬不要傳引數,比如用fuc(a)是不行的。

解決方法2--列表:

示例**如下: 

a = [3]

def fuc():

print a[0]

a[0] = a[0] 1

if __name__ == "__main__":

global a

for i in range(10):

fuc()

print 'hello'

print a[0]

結果同上

列表也可以比較簡單的實現這一功能

C 兩個cpp呼叫靜態全域性變數與全域性變數問題

前提概要 兩個cpp檔案想操作同乙個map物件,第乙個cpp中做插入處理,第二個cpp中做查詢處理。使用全域性變數可以實現,這裡記錄一下使用靜態全域性變數時,為什麼會出錯的問題。aaa.h include include include using namespace std void f bbb ...

PHP核心中重要的兩個全域性變數

在閱讀php原始碼的時候,會遇到很多諸如 cg eg 這樣的巨集,如果不了解這些巨集的意義,會給理解原始碼造成很大困難。zend引擎中有兩個重要的全域性變數結構體,就是zend引擎關閉之前都會存在的變數 typedef struct zend compiler globals zend compil...

兩個不同的檔案相互引用全域性變數

乙個工程下有很多檔案,都是用makefile進行管理的,但是乙個檔案怎麼去呼叫另外乙個檔案中的全域性變數呢?這個工作也涉及了很多,簡單實用。mapan localhost csdn ls a.c b.c b.h mapan localhost csdn cat a.c include include...