更新時間:2022-09-28 來源:黑馬程序員 瀏覽量:
變量的作用域始終是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é)果