Python中的包
在Python中,提出了包(Package)的概念。包是一个分层次的目录结构,它将一组功能相近的模块组织在一个目录下。使用模块可以避免函数名和变量名重名引发的冲突。那么,如果模块名重复应该怎么办呢?在Python中,提出了包(Package)的概念。包是一个分层次的目录结构,它将一组功能相近的模块组织在一个目录下。这样,既可以起到规范代码的作用,又能避免模块名重名引起的冲突。包简单理解就是“文件夹”,只不过在该文件夹下必须存在一个名称为_ _init_ _.py” 的文件
1.Python程序的包结构
在实际项目开发时,通常情況下,会创建多个包用于存放不同类的文件。例如,开发一个网站时可以先创建一个名称为shop的项目,然后在该包下又创建了admin、home 和templates 3个包和一个manager.py的文件,最后在每个包中,又创建了相应的模块。如图所示:
2.创建和使用包
(1) 创建包
创建包实际上就是创建一个文件夹,并且在该文件夹中创建一个名称为“_ _init_ _.py” 的python文件。在_ _init_ _.py文件中,可以不编写任何代码,也可以编写一些 Python代码。在_ _init_ _.py文件中所编写的代码,在导入包时会自动执行。
例如,在E盘根目录下,创建一个名称为 settings 的包,可以按照以下步骤进行:
1. 计算机的E盘根目录下,创建一个名称为 settings 的文件夹。
2. 创建一个名称为“_ _init_ _.py”的文件,保存在settings文件夹下。
至此,名称为 settings 的包创建完毕了,创建完毕之后便可以在该包中创建所需的模块了。
(2)使用包
创建包以后,就可以在包中创建相应的模块,然后再使用 import 语句从包中加载模块。从包中加载模块通常有以下3种方式:
1.通过“import + 完整包名+模块名”形式加载指定模块
“import + 完整包名 + 模块名”形式是指:假如有一个名称为settings的包,在该包下有一个名称为 size 的模块,那么要导入size模块,可以使用下面的代码:
本文未完全显示,开通会员查看全文......