一,导入模块的方式
导入 | 调用 |
---|---|
import 模块名 | 模块名.功能名() |
from 模块名 import 功能1,功能2,功能3 … | 功能名() |
from 模块名 import * | 功能名() |
注意:功能和模块可以通过as定义别名
二 制作模块
1 if name == ‘main’
只有当前文件中调用该函数,其他导入的文件内不符合该条件。
2 模块的定位顺序
当导入一个模块,python解释器对模块位置的搜索顺序是:
当前目录;
如果不在当前目录,python则搜索在shell变量PYTHONPATH下的每个目录;
如果都找不到,python会查看默认路径,UNIX下,默认路径一般为/user/local/lib/python/
注意:自己的文件名不能和已有的模块名重复,如果重复会导致原模块无法使用
3 all
如果一个模块文件中有__all__变量,当使用 from xxx import * 导入时,只能导入这个列表中的元素。
__all__ = ['testA']
def testA():
print('testA')
def testB():
print('testB')
二 包
包将有联系的模块组织在一起,即放到同一个文件夹下,并且在这个文件夹创建一个名字为__init__.py的文件,那么这个文件夹就称之为包。
1 导入包
导入:import 包名.模块名 调用:包名.模块名.目标。
导入:from 包名 import * 调用:模块名.目标(必须在__init__.py文件中添加__all__ = [],控制允许导入的模块列表)。