假设在PHP中使用正常的约定: 单下划线表示受保护的成员变量或方法 双下划线表示私有成员变量或方法 这是因为在PHP具有弱OOP支持且没有私有和受保护的概念时,采用此约定可以使开发人员指示成员变量或方法是私有或受保护的,以更好地传达给代码的用户。不过,用户可以选择忽略这些语义并调用“私有”和“受保护”的成员变量和方法。
单下划线在Python中对于类/实例属性没有特殊含义。按照惯例,它表示私有变量/函数。使用from module import *不会导入以单下划线开头的变量和函数。(感谢Bi Rico)双下划线触发名称修饰。这使得类拥有与其子类中同名但不同的属性。
__init__
遵循这些约定)。无论如何,关键点是指导。 - user2864740