Export to wheel or egg-info
[TOC]
1. 文件打包
提高程序的可复用性是python的生命,The Python Package Index (PyPI) 有大量的包可供安装,可以使用已有的包组合起来构建自己的web 程序,同时可以将已经写好的app进行打包,以wheel或者egg形式发布,通过pip进行安装
:bulb: Package? App?
python的包提供了一种组织相关文件以便于进行代码复用的方法,每个包里包含了多个文件,即通常的module
一个包里的文件可以通过
import foo.barfrom foo import bar的形式引入到目标代码中去,每个包必须以__init__.py文件进行标识一个django app是一个django项目所用的实现特定功能的模块,可以讲其导出为二进制包
Wheel vs Egg
Wheel和Egg都是为了进行包安装而用的打包格式,不需要进行 build compilation 可以之间用于测试或者生产环境中,egg格式最早在2004年被引入,wheel在2012年引入,现在wheel已经被作为标准的build binary 包格式
Wheel有一个官方的PEP427来定义,而Egg没有PEP定义。
Wheel是一种分发格式,即打包格式。而Egg既是一种分发格式,也是一种运行时安装的格式,并且是可以被import的。
Wheel文件不会包含.pyc文件
Wheel使用和PEP376兼容的.dist-info目录,而Egg使用.egg-info目录。
Wheel有着更丰富的命名规则。
Wheel是有版本的。每个Wheel文件都包含wheel规格的版本和打包它的实现。
Wheel在内部被sysconfig path type管理,因此转向其他格式也更容易。
2. 导出包
2.1 将app文件夹移到相应的打包位置
将polls文件夹移动到django-polls ,注意命名格式,不要与pypi中已经存在的包名重复,对于django项目使用django前缀,不要使用django中默认的已有包contrib admin auth message
2.2 创建README.rst
2.3 创建LICENSE
2.4 setup.py
2.6 MANIFEST.in
3. 导出
Last updated
Was this helpful?