博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
函数进阶之命名空间
阅读量:6090 次
发布时间:2019-06-20

本文共 664 字,大约阅读时间需要 2 分钟。

命名空间是名称到对象的映射。命名空间是一个字典的实现,键为变量名,值是变量对应的值。各个命名空间是独立没有关系的,一个命名空间中不能有重名,但是不同的命名空间可以重名而没有任何影响。 x = 1 在内存中是{x:4304947712}   x对应的是1的内存地址 名称空间分三种 locals: 是函数内的名称空间,包括局部变量和形参。 globals: 全局变量,函数定义所在模块的名字空间,也就是打印出这个程序的所有变量。 builtins: 内置模块的名字空间 不同变量的作用域不同就是由这个变量所在的命名空间决定的。作用域即范围 全局范围:全局存活,全局有效。 局部范围: 临时存活,局部有效。 查看作用域方法 globals(),locals() 作用域的查找顺序 LEGB L:locals E: enclosing 相邻的上级 G: globals B: builtins 例子
n = 10def func():    n = 20    print('func', n)    def func2():        n = 30        print('func2', n)        def func3():            print('func3:', n)        func3()    func2()func()# func 20# func2 30# func3: 30

 

转载于:https://www.cnblogs.com/lshedward/p/9970434.html

你可能感兴趣的文章
MSSQL-SQL SERVER一些使用中的技巧
查看>>
nodejs express 框架解密4-路由
查看>>
linux设置LD_LIBRARY_PATH变量
查看>>
整理:java定时器。
查看>>
Objective C 快速入门学习一
查看>>
移动互联网实战--社交游戏的排行榜设计和实现(1)
查看>>
瘋子C语言笔记 (string)
查看>>
PHP-四种解析XML文件的方法
查看>>
连HTTPS都有漏洞,这么不安全的互联网我们还要继续用吗?
查看>>
MySQL的各种join
查看>>
微信支付开发(2) 扫码支付模式一
查看>>
java.lang.Runnable接口
查看>>
jQuery cssHook的经典例子
查看>>
HDU 5052 Yaoge’s maximum profit 光秃秃的树链拆分 2014 ACM/ICPC Asia Regional Shanghai Online...
查看>>
Java Date API demo
查看>>
转multicast vs broadcast
查看>>
ASP.NET MVC权限验证 封装类
查看>>
表单数据相关
查看>>
安卓动画基础讲解
查看>>
继承中參数传递及调用顺序
查看>>