关于python _和__的区别
1.名称前的单下划线,“_xxx”,表示该名称为私有,也就是说:当你引入模块时,以_命名的名称都不可见
2.名称后的单下划线,“xxx_”,仅区别系统关键字,比如:你想使用print作为变量名称,为了防止冲突,你可以写成print_的方式
3.双前下划线,“__xxx”,避免与子类名称冲突,比如:在class A中定义了__method_A和_method_B和method_C,python解释器就会将其解释为__A__method_A和_method_B和method_C,因此class B继承class A后将无法改写__method_A方法,可以看到,class B继承的__method_A方法已经被python解释器修改成新的_B__method_A方法了
4.双前下划线,“xxx”,同时双前下和双后下的python名称不会被解释器修改,在 python中这样的方法具有特殊用途,如构造方法__init__,这种方法又叫做魔法方法
5.单下划线_
a.在解释器中:“_”代表交互式解释器会话中上一条执行的语句的结果。
b.作为一个名称:此时“”作为临时性的名称使用。例如,下面的例子中,你可能对循环计数中的实际值并不感兴趣,此时就可以使用“”。
for _ in range(10):
…dosomething
c.作为一个临时方法名称,如:from xxxx import xxxx as _
test = _(“initmethod”)



