Python 中 _、__ 和 __xx__ 方法的区别
_
Python中不存在真正的私有方法。为了实现类似于 c++ 中私有方法,可以在类的方法或属性前加一个“_”单下划线,意味着该方法或属性不应该去调用,它并不属于API。
__
这个双下划线更会造成更多混乱,但它并不是用来标识一个方法或属性是私有的,真正作用是用来避免子类覆盖其内容。即 在创建一个以"__"两个下划线开始的方法时,这意味着这个方法不能被重写,它只允许在该类的内部中使用。
__xx__
__xx__
经常是操作符或本地函数调用的magic methods。
1 | "igor" name = |
总结
- 使用
_
来表示该方法或属性是私有的,不属于API; - 当创建一个用于 python 调用或一些特殊情况时,使用
__xx__
; - 使用
__
来避免子类的重写;
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 梦家博客!
评论
TwikooValine