1、包管理

  为什么要使用包管理?

    Python的模块或者源文件直接可以复制到目标项目目录中,即可以导入使用了。但是为了更多项目调用使用,或者共享给别人使用,就需要打包,或者发布到网路,以便供人使用,目的也是为了复用。

    Pypi( Python Package Index) ,公共的模块存储中心 https://pypi.python.org/pypi

2、主要工具:

  distutils:

    官方库distutils,使用安装脚本setup.py来构建,安装包。2000年停止开发

  setuptools:

    它是替代distutils 的增强版工具集,包含easy_install 工具,使用ez_setup.py文件,支持egg格式的构建和安装,提供查找,下载安装构建,发布,管理等包管理功能。

    setuptools是包管理的核心模块。

  pip:

    目前包管理的事实标准,构建在setuptools之上,替代easy_install的,同样提供丰富的包管理功能、

    从Python3.4 开始之间包好在安装文件中。

  wheel:

    wheel格式定义在PEP427中

    wheel文件中不包含.pyc 文件

    提供bdist_wheel 作为seetuptools的扩展命令,这个命令可以用来生成新打包格式wheel

    pip 从1.4版本开始 提供了一个wheel子命令来安装wheel包,当然,需要先安装wheel模块。

    它可以让Python库以二进制形式安装,而不需要本地编译。

3、使用setup.py打包  

 1 # from distutils.core import setup
 2 from setuptools import setup
 3 
 4 # 导入setup函数并传参
 5 setup(name='m',
 6       version='0.1.0',
 7       description='Python test m',
 8       author='jery',
 9       author_email='jerry@mage.com',
10       # url='https://ww.python.org/sigs/distuils-sig/',
11       packages=['m', 'm.m2', 'm.m2.m21'],
12       py_modules=['tt']
13       )
14 # name 名字
15 # version 版本
16 # packages=[] 打包列表
17 # packages=['m'] ,指定m, 就会把 m 所有的 非目录子模块打包
18 # ['m', 'm.m1', 'm.m1.m2', 'm.m1.m2.m3']
19 # description 描述信息
20 # author 作者
21 # author_email 作者邮件
22 # url 包的主页,可以不写
setup.py

相关文章:

  • 2021-11-23
  • 2022-12-23
  • 2021-11-23
  • 2021-11-23
  • 2021-11-28
  • 2021-06-14
猜你喜欢
  • 2022-12-23
  • 2022-01-28
  • 2021-11-23
  • 2021-11-23
  • 2022-01-31
  • 2021-11-20
  • 2021-11-23
相关资源
相似解决方案