1.不带下划线的变量和方法,是普通的变量和方法,在作用域内都可以正常使用,如果是类中定义的属性,则类对象可以在任何地方使用。
2.单前缀下划线“_”的变量和方法,这种变量可以在作用域内正常使用,如果定义在类中,外部可以使用,子类也可以继承。但是,在另一个py文件中通过from aaa import * 导入时,无法导入单下划线“_”开头的变量和方法。
3.双前缀下划线“__”的变量和方法,在作用域内也可以正常使用,如果定义在类中,则是私有属性和私有方法,在外部不能直接访问,子类也不会继承,要访问只能通过间接的方法。在另一个py文件中通过from aaa import * 导入时,也无法导入双下划线“__”开头的变量和方法。
4.单后缀下划线“_”的变量和方法,这种命名方法主要是为了避免与Python关键字冲突而采用的命名方法。
5.双前缀下划线加双后缀下划线“__init__”,这是Python中的魔法属性和魔法方法,都是有特殊含义的和特殊功能的,自己不要轻易定义这样的变量和方法。
————————————————
原文链接:https://blog.csdn.net/weixin_43790276/article/details/90734040