您好,登錄后才能下訂單哦!
這篇文章主要講解了“python中nonlocal關鍵字的說明和使用方法”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“python中nonlocal關鍵字的說明和使用方法”吧!
說明
1、nonlocal聲明的變量不是局部變量或全局變量,而是外部嵌套函數中的變量。
2、nonlocal定義后的變量只會在調用的子函數中發揮作用。
實例
x = 1 def func(): nonlocal x x =2 print(x) func() print(x) 結果代碼報錯,SyntaxError: no binding for nonlocal 'x' found
為什么我只是把global換 成了nonlocal,卻報錯了?因為nonlocal是用于函數中的函數。
x = 1 def func(): x = 2 def subfunc(): nonlocal x x = x + 1 print('subfunc內打印的值:%d' % x) return x print('func內打印的值:%d' % x) return subfunc func() print('func外打印的值:%d' % x) 結果是: func內打印的值:2 func外打印的值:1
nonlocal關鍵字既沒有改變全局變量x=1的值,也沒有改變局部變量x=2的值。這就是指nonlocal聲明的變量不是局部變量,也不是全局變量。
感謝各位的閱讀,以上就是“python中nonlocal關鍵字的說明和使用方法”的內容了,經過本文的學習后,相信大家對python中nonlocal關鍵字的說明和使用方法這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。