python中_x、__x、__xx__的区别

python中_x、__x、__xx__的区别


注释:该文章是从英文文档翻译过来的,具体代码可以参考原网址,这里只是简单解释一下他们的区别,方便大家迅速了解。原地址: difference-between-one-underline-and-two-underlines-in-python

1.‘单下划线’

Python没有真正的私有方法,所以方法或属性开头的下划线表示不应该访问这个方法,因为它不是API的一部分。

2.‘左侧双下划线’

它不是标识私有方法的,它的作用在于避免子类覆盖它的内容。
因此,在我们创建一个以"__"两个下划线开始的方法时,这意味着这个方法不能被重写,它只允许在该类的内部中使用。

3.‘两侧双下划线’

“__xx__”经常是操作符或本地函数调用的魔术方法。
例如,__init__()函数是当对象被创建初始化时调用的;__new__()是用来创建实例。

你可能感兴趣的:(基础工具)