__init__.py :
__init__.py 文件定义了包的属性和方法。它可以什么也不定义,可以只是一个空文件,但是必须存在。如果某个文件夹中不存在 __init__.py 文件,这个文件夹就仅仅是一个文件夹,而不是一个包,它就不能被导入或者包含其它的模块和嵌套包。
__init__.py 是Python包的标识符。Python包实际上就是一个文件夹,__init__.py 的作用就是把这个文件夹变成一个可识别的Python包。如果没有 __init__.py 文件,则该文件夹只是一个普通的目录。
构建函数时下划线 ‘_’,’__’ 的作用及区别:
使用单下划线 ‘_’ 来表示该方法是私有及内部的,不属于API;
使用双向 ‘__’,如 __init__ 创建一个用于python调用的通用函数;
使用单向 ‘__’,来避免子类中的函数对父类中的函数的重写和覆盖。