单下划线、双下划线、头尾双下划线说明:
__foo__:定义的是特列方法,类似 __init__() 之类的。
_foo:以单下划线开头的表示的是 protected 类型的变量,
即保护类型只能允许其本身与子类进行访问,
不能用于 from module import *
就是说,只能在本模块中使用,如果导入到其他模块,则访问不了
(有些时候,你会看到以一个下划线开头的实例变量名,
比如_name,这样的实例变量外部是可以访问的,
但是,按照约定俗成的规定,当你看到这样的变量时,
意思就是,“虽然我可以被访问,但是,请把我视为私有变量,不要随意访问”。)
__foo:双下划线的表示的是私有类型(private)的变量,
只能是允许这个类本身进行访问了。
网友评论