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

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

簡單了解python關(guān)鍵字global nonlocal區(qū)別

瀏覽:6日期:2022-07-10 15:57:03

第一,兩者的功能不同。global關(guān)鍵字修飾變量后標(biāo)識該變量是全局變量,對該變量進(jìn)行修改就是修改全局變量,而nonlocal關(guān)鍵字修飾變量后標(biāo)識該變量是上一級函數(shù)中的局部變量,如果上一級函數(shù)中不存在該局部變量,nonlocal位置會發(fā)生錯(cuò)誤(最上層的函數(shù)使用nonlocal修飾變量必定會報(bào)錯(cuò))。

第二,兩者使用的范圍不同。global關(guān)鍵字可以用在任何地方,包括最上層函數(shù)中和嵌套函數(shù)中,即使之前未定義該變量,global修飾后也可以直接使用,而nonlocal關(guān)鍵字只能用于嵌套函數(shù)中,并且外層函數(shù)中定義了相應(yīng)的局部變量,否則會發(fā)生錯(cuò)誤(見第一)。

正常的

a = 1def func(): a = 10 print(a)func()print(a)

運(yùn)行結(jié)果:

101

使用global

a = 1def func(): global a a = 10 print(a)func()print(a)

運(yùn)行結(jié)果:

1010

使用nonlocal

a = 1def func(): nonlocal a a = 10 print(a)func()print(a)

運(yùn)行結(jié)果:

100

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 大姚县| 香港 | 聂拉木县| 威海市| 贡山| 房产| 丁青县| 安宁市| 太湖县| 栾城县| 栾川县| 长治市| 华亭县| 新化县| 喀喇沁旗| 阿勒泰市| 丘北县| 齐齐哈尔市| 肥西县| 岳阳市| 贵州省| 太谷县| 鄂托克旗| 新巴尔虎左旗| 乌审旗| 奈曼旗| 兴城市| 香港 | 马公市| 安新县| 吴桥县| 襄汾县| 呼玛县| 克东县| 手机| 大埔区| 汉川市| 诸城市| 论坛| 巴东县| 比如县|