Python类的下划线命名有什么不同


这个问题迷惑了好久,一直没有得到解决。今天查阅各种资料总结一波!

总结

  1. 以单下划线开头(_xxx),表示这是一个保护成员,只有类对象和子类对象自己能访问到这些变量。以单下划线开头的变量和函数被默认当作是内部函数,使用from module improt *时不会被获取,但是使用import module可以获
  2. 以单下划线结尾(xxx_),仅仅是为了区别该名称与关键词
  3. 双下划线开头(__xxx),表示为私有成员,只允许类本身访问,子类也不行。在文本上被替换为_class__method
  4. 双下划线开头,双下划线结尾(__xxx__)。一种约定,Python内部的名字,用来区别其他用户自定义的命名,以防冲突。是一些 Python 的“魔术”对象,表示这是一个特殊成员,例如:定义类的时候,若是添加init方法,那么在创建类的实例的时候,实例会自动调用这个方法,一般用来对实例的属性进行初使化,Python不建议将自己命名的方法写为这种形式。

欢迎订阅我的博客:RSS feed
知乎: 赤乐君
Blog: BrambleXu
GitHub: BrambleXu
Medium: BrambleXu

参考资料


文章作者: BrambleXu
版权声明: 本博客所有文章除特別声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 BrambleXu !
评论
  目录