久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

Python中的全局變量如何理解

瀏覽:135日期:2022-07-22 17:57:30

Python是一種面向?qū)ο蟮拈_發(fā)語言,在函數(shù)中使用全局變量,一般應(yīng)作全局變量說明,只有在函數(shù)內(nèi)經(jīng)過說明的全局變量才能使用。

首先應(yīng)該說明的是需要盡量避免使用Python全局變量。不同的模塊都可以自由的訪問全局變量,可能會(huì)導(dǎo)致全局變量的不可預(yù)知性。對(duì)全局變量,如果程序員甲修改了_a的值,這時(shí)可能導(dǎo)致程序中的錯(cuò)誤。這種錯(cuò)誤是很難發(fā)現(xiàn)和更正的。

全局變量降低了函數(shù)或模塊之間的通用性,不同的函數(shù)或模塊都要依賴于全局變量。同樣,全局變量降低了代碼的可讀性,閱讀者可能并不知道調(diào)用的某個(gè)變量是全局變量。 但是某些時(shí)候,Python全局變量能夠解決局部變量所難以解決的問題。事物要一分為二。

python里面全局變量有兩種靈活的用法:

gl.py:

gl_1 = ’hello’gl_2 = ’world’

在其它模塊中使用

a.py:

import gl def hello_world() print gl.gl_1, gl.gl_2

b.py:

import gl def fun1() gl.gl_1 = ’Hello’ gl.gl_2 = ’World’def modifyConstant() : global CONSTANT print CONSTANT CONSTANT += 1 returnif __name__ == ’__main__’ : modifyConstant() print CONSTANT

1 聲明法

在文件開頭聲明Python全局變量variable, 在具體函數(shù)中使用該變量時(shí),需要事先聲明 global variable,否則系統(tǒng)將該變量視為局部變量。 CONSTANT = 0 (將全局變量大寫便于識(shí)別)

2模塊法

gl.py:

gl_1 = ’hello’gl_2 = ’world’

在其它模塊中使用

a.py:

import gl def hello_world() print gl.gl_1, gl.gl_2

b.py:

import gl def fun1() gl.gl_1 = ’Hello’ gl.gl_2 = ’World’def modifyConstant() : global CONSTANT print CONSTANT CONSTANT += 1 returnif __name__ == ’__main__’ : modifyConstant() print CONSTANT

內(nèi)容擴(kuò)展:

什么是局部變量

通俗定義:函數(shù)內(nèi)部定義的變量就叫局部變量。

話不多說,代碼如下:

def test1(): a = 300 # 定義一個(gè)局部變量a,并初始化300 print('--test1--修改前:a=%s' % a) a = 200 # 給變量a重新賦值200 print('--test1--修改后:a=%s' % a)def test2(): a = 400 # 定義另一個(gè)局部變量a,并初始化400 print('--test2--修改后:a=%s' % a)# 分別調(diào)用函數(shù)test1,test2test1()test2()

輸出:

--test1--修改前:a=300--test1--修改后:a=200--test2--修改后:a=400

結(jié)論:

局部變量就是在函數(shù)內(nèi)部定義的變量。 不同的函數(shù)內(nèi)部可以定義名字相同的變量,但它們不會(huì)產(chǎn)生影響。 局部變量的作用,為了臨時(shí)保存數(shù)據(jù)需要在需要在函數(shù)中定義變量來進(jìn)行存儲(chǔ)。

到此這篇關(guān)于Python中的全局變量如何理解的文章就介紹到這了,更多相關(guān)Python中全局變量詳解內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 青州市| 东丰县| 乌鲁木齐市| 哈巴河县| 卢龙县| 凉城县| 雅江县| 阜康市| 辽宁省| 开江县| 高阳县| 丰宁| 鸡泽县| 伊春市| 霍林郭勒市| 新乐市| 长丰县| 莱西市| 郯城县| 屏山县| 芦溪县| 上饶市| 汾西县| 凭祥市| 沁源县| 梁河县| 米易县| 眉山市| 鹤山市| 拜城县| 泰和县| 定南县| 双鸭山市| 兖州市| 和龙市| 晴隆县| 金山区| 家居| 大厂| 镇原县| 响水县|