一. 模块
1.定义:模块就是工具包,要想使用这个工具包中的工具(好比是函数),就需要导入这个模块。
(模块是非常简单的Python文件,单个python文件就是一个模块,两个文件就是两个模块)
2.模块的导入方法:
1) import 模块1 , 模块2
2)import 模块名.函数名
3)from 模块名 import 函数名 / 变量名
4) import 长模块名 as 短模块名
5) from 模块名 import *
- 如何定位模块?当导入一个模块,python解释器对模块位置搜索的顺序为:
1) 当前目录
2)如果不在当前目录,python解释器会搜索在shell 变量PYTHONPATH下的每一个目录
3)如果都找不到,python解释器会看默认路径,UNIX下,默认路径一般为 /usr/local/lib/python/
- 模块搜索路径存储在system模块的sys.path变量中。
Q: 模块中的 all 有什么作用?
A:如果一个文件中有 all 变量,那么也就意味着这个变量中的元素,不会被 from xxx import* 中导入。
二. 包
包将有联系的模块组织在一起,有效避免模块名称的冲突问题,让应用组织结构更加清晰。
一个普通的python应用程序目录结构为:
(ps 官方文档中的例子:
)
三. 自定义模块的制作与发布
基本步骤:
1)定义模块:在python中每个文件就可以作为一个模块,模块的名字就是这个文件的名字。
2)调试模块
3)测试模块
在实际的开发中,当一个开发人员编写玩一个模块后,为了让模块能够在项目中达到想要的效果,这个开发人员会自行在py 文件中添加一些测试信息。
模块发布的准备工作:
1.为模块文件创建一个文件夹,并将模块文件复制到这个文件中(一般,文件夹的名字和模块的名字一样)
2. 在文件夹中创建一个名为【setup.py】的文件,内容如下:
#从python发布工具导入“setup”函数
from distutils.core import setup
setup(
name = ‘模块名称’,
version = ‘模块的版本’
author = ‘作者名’
author_email = ‘作者邮箱地址’
url = ‘官方网站’
description = ‘模块介绍’
)
py_modules = [你需要发布的模块名,不需要.py]
模块的发布:
模块的安装与使用
1)找到模块的压缩包
2) 解压
3) 进入文件夹
4) 执行命令 sudo python setup.py install