【python】单下划线与双下划线的区别
2015-11-26 09:45
513 查看
Python 用下划线作为变量前缀和后缀指定特殊变量。
_xxx 不能用'from moduleimport *'导入
__xxx__ 系统定义名字
__xxx 类中的私有变量名
以单下划线开头(_foo)的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用“from xxx import
*”而导入;以双下划线开头的(__foo)代表类的私有成员;以双下划线开头和结尾的(__foo__)代表python里特殊方法专用的标识,如
__init__()代表类的构造函数。
结论:
1、_xxx 不能用于’from module import *’ 以单下划线开头的表示的是protected类型的变量。即保护类型只能允许其本身与子类进行访问。
2、__xxx 双下划线的表示的是私有类型的变量。只能是允许这个类本身进行访问了。连子类也不可以
3、__xxx___ 定义的是特列方法。像__init__之类的
_xxx 不能用'from moduleimport *'导入
__xxx__ 系统定义名字
__xxx 类中的私有变量名
以单下划线开头(_foo)的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用“from xxx import
*”而导入;以双下划线开头的(__foo)代表类的私有成员;以双下划线开头和结尾的(__foo__)代表python里特殊方法专用的标识,如
__init__()代表类的构造函数。
结论:
1、_xxx 不能用于’from module import *’ 以单下划线开头的表示的是protected类型的变量。即保护类型只能允许其本身与子类进行访问。
2、__xxx 双下划线的表示的是私有类型的变量。只能是允许这个类本身进行访问了。连子类也不可以
3、__xxx___ 定义的是特列方法。像__init__之类的
相关文章推荐
- python的range()函数用法
- 这个帖子要收藏,以后用得着--python 实时获取子进程输出
- LeetCode OJ 系列之122 Best Time to Buy and Sell Stock II --Python
- LeetCode OJ 系列之121 Best Time to Buy and Sell Stock --Python
- python的tab键自动补全工程
- PYTHON多进程编码结束之进程池POOL
- python 导入模块出错
- win7 64位 python3.4&opencv3.0配置安装教程
- Python yield深度解析
- python 入门
- Python_异常处理
- python核心编程(第二版)-------第六章课后习题
- python之路第五篇之模块和加密算法(进阶篇:续)
- python-29:多级页面爬取源码
- 关于字符串列表与列表的转换
- python 无定参数处理
- Python之collection系列
- Python基础——min/max与np.argmin/np.argmax
- leetcode之Plus One
- 如何将Mac OS X10.10.5下的Python2.7升级到最新的Python3.5