python --- 变量和函数的作用域
2016-10-29 23:21
531 查看
在一个.py模块中,我们可能会定义很多函数和变量,但有的函数和变量我们希望给别人使用,有的函数和变量我们希望仅仅在模块内部使用。在Python中,是通过_
前缀来实现的。
1.正常的函数和变量名是公开的(public),可以被直接引用,比如:abc,
x123,
PI等;
2.类似
__xxx__这样的变量是特殊变量,可以被直接引用,但是有特殊用途,比如上面的
__author__,
__name__就是特殊变量,
hello模块定义的文档注释也可以用特殊变量
__doc__访问,我们自己的变量一般不要用这种变量名;
3.类似
_xxx和
__xxx这样的函数或变量就是非公开的(private),不应该被直接引用,比如
_abc,
__abc等;
之所以我们说,private函数和变量“不应该”被直接引用,而不是“不能”被直接引用,是因为Python并没有一种方法可以完全限制访问private函数或变量,但是,从编程习惯上不应该引用private函数或变量。
相关文章推荐
- python 函数 本地变量 函数的命名空间 变量的作用域
- Python:函数2——变量的作用域 、 返回值
- python函数-变量作用域
- python 中模块(model)概念的引入 以及 函数变量的作用域
- python的本地变量,全局变量,函数的作用域,嵌套函数引用包装函数
- python 函数、函数式编程、变量作用域、函数__doc__属性
- python基础----函数的定义和调用、return语句、变量作用域、传参、函数嵌套、函数对象、闭包、递归函数
- javascript和python函数中变量作用域的区别
- python函数学习与变量作用域
- python学习笔记11(函数二): 参数的传递、变量的作用域
- Python学习(21):Python函数(5):变量作用域与闭包
- python学习笔记三:函数及变量作用域
- Python函数与变量作用域
- Python函数参数传递以及变量作用域
- Python(五) 包、模块、函数与变量作用域
- Python模块中的变量和函数的作用域
- python[变量作用域-函数-闭包-装饰器-生成器]
- Python学习之变量的作用域
- 为什么python在函数中修改"字典型全局变量"不需要global
- Python开发——带下划线的变量和函数