您好,登錄后才能下訂單哦!
本篇內容介紹了“python如何定義并使用全局變量”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
首先得知道,什么是全局變量,什么是局部變量。全局變量,是指所有函數都能調用的變量,一般都在代碼塊的最外層。局部變量則相反,局部變量有在當前函數內能夠進行調用,跳出函數后局部變量會立即被銷毀,無法調用。
num = 1 # 這是一個全局變量 為了美觀我把他放在第一行
def update(): # 示例函數
y = 1 # 這是一個局部變量,只有這個函數內可以使用
print(num) # 全局變量在函數內部是可以引用的
y = num+1 # 全局變量可以參與運算
return y # 函數結束,y會被銷毀,外部無法引用y
update()
#print(y) # 因為y是函數內的局部變量,函數結束后就會被銷毀,所以引用不到y
print(num) # 全局變量可以引用
如上所示,只要在最外層定義變量,這個變量就能全局引用。那么接下來就會出現一個問題:如果我要在函數內修改這個全局變量的值,可行嗎?
答案是可行的,不過要掌握一定的方法。
int a =1;
void test(){
a = a+100;
}
int main() {
printf("Hello, World!\n %d",a);
a =a+1;
printf("\n%d",a);
test();
printf("\n%d",a);
return 0;
}
如上代碼所示,C語言的全局變量的值可以直接修改,那么 python 能不能像這樣直接修改呢?沒錯,不可以。如果像C語言那樣直接修改,代碼會報錯(未解析的引用)。這個時候,global
關鍵字的作用就出現了。如果要在函數內修改全局變量的值,只要在函數內部用 global
聲明這個全局變量,就能在函數內修改這全局變量的值。
num = 1 # 這是一個全局變量 為了美觀我把他放在第一行
def update(): # 示例函數
global num # 使用global聲明num,在函數中就可以修改全局變量的值
num += 1 # 全局變量可以參與運算
return 0
print(num) # 調用函數前查看全局變量
update() # 調用函數,修改全局變量
print(num) # 調用函數后查看全局變量
“python如何定義并使用全局變量”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。