在实际工程中使用的编程语言,都有(也应该有)本身的模块化方式,这是因为:一个文件不可能写的无限长,把不一样性质和功能的代码放入不一样的文件,再由文件组成不一样的文件夹,这种方式符合人们思考和理解的习惯,不过,这样作了之后,随之而来的问题就是代码依赖和共用,具体来讲就是导出和导入的问题。python
在JAVA中,文件组织方式是这样的:一个公共类独占一个文件(一个文件就是一个类),功能关联紧密或者相似的文件放在一个package中,多个package组成一个功能独立的依赖包,并被打包成jar包;在导出导入方式上,导出用public, protected, default等访问范围关键字控制,导入用import关键字。编程
在python中,模块化编程的方式也从代码文件组织和导入导出两方面出发。编程语言
文件组织模块化
一个.py文件称为一个module, 一个module中能够有多个类,函数和变量;多个联系紧密的.py文件放在一个文件夹中,而且增长一个名为_init_.py的文件,即构成一个package,一样,多个package构成一个依赖包。函数
导出导入spa
导出方面,python没有JAVA那样的访问范围关键字,而是使用命名规范这样的软约束,在变量或者函数前加一个下划线表明module或者class内部私有,剩下都认为是能够导出的。it
导入方面,python通常使用两种:io