1.包
概念:
- 包是一个包含多个模块的特殊目录
- 目录下有一个特殊的文件 __init__.py
- 包名的命名方式和变量名一致,小写字母 + 下划线
好处:使用Import 包名 可以一次性导入包中所有的模块
案例演示:
1.新建一个 zy_message的包
2.在目录下,新建两个文件 send_message 和 receive_message
3.在send_message文件中定义一个send函数
4.在receive_message文件中定义一个receive函数
5.在外部直接导入zy_message的包
__init__.py
要在外界使用包中模块,需要__init__.py中指定对外界提供的模块列表
#send_message文件
def send(text):
print("已经发送过去%s"% text)
#receive_message
def receive():
return "这是来自xx的xiaoxi"
#__init__文件
from . import send_message
from . import receive_message
#导入包zy_message
import zy_message
#调用方法 包名+包中文件名+方法
zy_message.send_message.send("hello")
2.发布模块
如果希望自己开发的模块分享给其他人,可以按照以下步骤:
2.1创建 setup.py 的文件
from distutils.core import setup
setup(name="hm_message",#包名
version="1.0",#版本
description="xiaoming's 发送和接收消息模块",#描述信息
long_description="完整的发送和接受消息模块",#完整描述信息
author="xiaoming",#作者
author_email="1234.qq.com",#作者邮箱
url="www.xiaoming.com",#zhuye
py_modules=["zy_message.send_message","zy_message.receive_message"]
)
2.2构建模块
python 3 setup.py build
2.3生成发布压缩包
python3 setup.py sdist
后面两步是针对linux平台下的,在windows平台,不需要直接压缩即可
3.安装模块
直接下载下来解压即可用在windows平台下
4.删除模块 直接del