更新時間:2022-09-28 來源:黑馬程序員 瀏覽量:
IT就到黑馬程序員.gif)
變量的作用域始終是Python學(xué)習(xí)中一個必須理解掌握的環(huán)節(jié),下面我們從局部變量和全局變量開始全面解析Python中變量的作用域。
所謂局部變量,指的是定義在函數(shù)內(nèi)的變量。定義在函數(shù)內(nèi)的變量,只能在函數(shù)內(nèi)使用,它與函數(shù)外具有相同名稱的其他變量沒有任何關(guān)系。不同的函數(shù),可以定義相同名字的局部變量,并且各個函數(shù)內(nèi)的變量不會產(chǎn)生影響。示例代碼如下:
def test_one():
number = 100
print('test_one中的number值為:%d'%number)
def test_two():
number = 200
print('test_two中的number值為%d'%number)
test_one()
test_one中的number值為:100
test_two()
test_two中的number值為200局部變量只能在其被聲明的函數(shù)內(nèi)部訪問,而全局變量可以在整個程序范圍內(nèi)訪問。全局變量是定義在函數(shù)外的變量,它擁有全局作用域。
接下來,通過一個案例來區(qū)分局部變量和全局變量,具體如例6-9所示。
例6-9 全局變量和局部變量
result = 100 # 全局變量
def sum(a, b):
result = a + b # 局部變量
print('函數(shù)內(nèi)的result的值為: ', result) # result在這里是局部變量
return result
# 調(diào)用sum函數(shù)
sum(100, 200)
print('函數(shù)外的變量result是全局變量,等于', result) 運行結(jié)果如圖6-17所示。

圖6-17 運行結(jié)果