发布网友 发布时间:2022-05-09 13:15
共2个回答
懂视网 时间:2022-05-10 06:38
Python中的下划线具有特殊的意义,python用下划线作为变量前缀和后缀指定特殊变量。python中下划线使用键盘上的Shift+减号键即可打出,减号键位于0和加号键之间。(推荐学习:Python视频教程)
在Python中下划线还具有 private 和 protected 类似的访问权限作用,下面我们具体分析。
Python主要存在四种命名: (1)object #公用方法 (2)__object__ #内建方法,用户不要这样定义 (3)__object #全私有,全保护(private) (4)_object #半保护(protected)
核心风格:避免用下划线作为变量名的开始。
因为下划线对解释器有特殊的意义,而且是内建标识符所使用的符号,我们建议程序员避免用下划线作为变量名的开始。
一般来讲,变量名_xxx被看作是“私有 的”,在模块或类外不可以使用。
当变量是私有的时候,用_xxx 来表示变量是很好的习惯。因为变量名__xxx__对Python来说有特殊含义,对于普通的变量应当避免这种命名风格。
“单下划线” 开始的成员变量叫做保护变量,意思是只有类对象和子类对象自己能访问到这些变量;
“双下划线” 开始的是私有成员,意思是只有类对象自己能访问,连子类对象也不能访问到这个数据。
以单下划线开头(_foo)的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用“from xxx import *”而导入;
以双下划线开头的(__foo)代表类的私有成员;
以双下划线开头和结尾的(__foo__)代表python里特殊方法专用的标识,如 __init__()代表类的构造函数。
实例:
class Foo(): def __init__(): ... def public_method(): print 'This is public method' def __fullprivate_method(): print 'This is fullprivate_method' def _halfprivate_method(): print 'This is halfprivate_method' f = Foo() f.public_method() # OK f.__fullprivate_method() # Error occur f._halfprivate_method() # OK f._Foo__fullprivate_method() # OK
更多Python相关技术文章,请访问Python教程栏目进行学习!
热心网友 时间:2022-05-10 03:46
python字符底部添加下横线方法: