打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
global 和 nonlocal关键字--python
global 和 nonlocal关键字
当内部作用域想修改外部作用域的变量时,就要用到global和nonlocal关键字了

内改外
#!/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 关键字了
#!/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
-----------------------------------------------------------------------------------






分享知识,分享快乐!希望中国站在编程之巅!

               ----

公众微信号:rsgz520

360图书馆馆号:rsgz002.360doc.com 
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Python中的变量作用域总结
第22天:Python NameSpace & Scope
python基础-函数作用域
Python基础【函数】
给妹子讲python-S01E19内嵌作用域与函数闭包
Python中的闭包到底有什么用
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服