- Python 3.6從入門到精通(視頻教學(xué)版)
- 王英英
- 443字
- 2019-12-06 14:20:13
6.7 變量作用域
Pyhton中,程序的變量并不是在哪個位置都可以訪問的,訪問權(quán)限決定于這個變量是在哪里賦值的。變量的作用域決定了在哪一部分程序可以訪問哪個特定的變量名稱。
變量作用域包括全局變量和局部變量。其中,定義在函數(shù)內(nèi)部的變量擁有一個局部作用域,定義在函數(shù)外的擁有全局作用域。
在函數(shù)之外定義的變量屬于全局變量,用戶可以在函數(shù)內(nèi)使用全局變量。例如:

運(yùn)行結(jié)果如圖6-31所示。

圖6-31 運(yùn)行結(jié)果
在本示例中,x就是一個全局變量。在函數(shù)get(y = x+100)中將變量x的值加100后賦給變量y。
當(dāng)用戶在函數(shù)內(nèi)定義的變量名稱與全局變量名稱相同時,函數(shù)內(nèi)定義的變量不會改變?nèi)肿兞康闹怠R驗楹瘮?shù)內(nèi)定義的變量屬于局部命名空間,而全局變量則屬于全局命名空間。
例如:

運(yùn)行結(jié)果如圖6-32所示。

圖6-32 運(yùn)行結(jié)果
在本示例中,第一次調(diào)用的x為全局變量,第二次調(diào)用的x為局部變量。
如果要在函數(shù)內(nèi)改變?nèi)肿兞康闹担捅仨毷褂胓lobal關(guān)鍵字。例如:

運(yùn)行結(jié)果如圖6-33所示。

圖6-33 運(yùn)行結(jié)果
在本示例中,首先定義一個全局變量x,然后定義函數(shù)changex(),該函數(shù)通過使用global關(guān)鍵字,將x的值修改為200。
推薦閱讀
- DevOps with Kubernetes
- 機(jī)器學(xué)習(xí)系統(tǒng):設(shè)計和實(shí)現(xiàn)
- DevOps for Networking
- 區(qū)塊鏈架構(gòu)與實(shí)現(xiàn):Cosmos詳解
- 編程珠璣(續(xù))
- 軟件測試工程師面試秘籍
- Web Development with Django Cookbook
- Learning Informatica PowerCenter 10.x(Second Edition)
- 微信公眾平臺開發(fā):從零基礎(chǔ)到ThinkPHP5高性能框架實(shí)踐
- 數(shù)據(jù)結(jié)構(gòu)(C語言)
- 編程菜鳥學(xué)Python數(shù)據(jù)分析
- Terraform:多云、混合云環(huán)境下實(shí)現(xiàn)基礎(chǔ)設(shè)施即代碼(第2版)
- Clojure Polymorphism
- 深度學(xué)習(xí)程序設(shè)計實(shí)戰(zhàn)
- 快樂編程:青少年思維訓(xùn)練