global 和 nonlocal關(guān)鍵字 當(dāng)內(nèi)部作用域想修改外部作用域的變量時,就要用到global和nonlocal關(guān)鍵字了 內(nèi)改外 #!/usr/bin/python # -*- coding: utf-8 -*- num=1 def fun(): global num print(num) num=1 print(num) fun() print("外部變量:",num) # 1 1 外部變量: 1 ----------------------------------------------------------------------------------- 修改嵌套作用域(enclosing 作用域,外層非全局作用域)中的變量則需要 nonlocal 關(guān)鍵字了 #!/usr/bin/python # -*- coding: utf-8 -*- def outer(): num=10 def inner(): nonlocal num num=100 print(num) inner() print(num) outer() # 100 100 ----------------------------------------------------------------------------------- 陷阱: #!/usr/bin/python # -*- coding: utf-8 -*- a=10 def fun(a): a=a+1; print(a) fun(a)#11 ----------------------------------------------------------------------------------- 分享知識,分享快樂!希望中國站在編程之巔!
360圖書館館號:rsgz002.360doc.com |
|