首页 > 技术文章 > python程序打包

FlameLuo 2018-09-25 07:42 原文

1.Setuptools基础

2.打包

3.编译扩展

4.使用py2exe创建可执行文件

 

1.Setuptools基础

  使用Setuptools可以完成很多任务,只需编写如下这样简单的脚本即可(如果没有安装Setuptools,可食用pip安装) 

from Setuptools import setup
setup(name = 'Hello',
          version = '1.0',
          description = 'A simple example',
          author = 'Magnus Lie Hetland',
          py_modules = ['hello']

  并非一定要向函数setup提供上面列出的所有信息(实际上,可以不提供任何参数);也可以提供其他的信息(例如author_email 或者url)

  注意:安装脚本运行时,将在当前目录中创建新的文件和子目录,因此你需要将其存储在一个新目录中,以免覆盖既有的文件。

python setup.py build
running build
running build_py
creating build
creating build/lib
copying hello.py ->build/lib

  Setuptools创建了一个名为build的目录;

  且包含子目录lib

  且将hello.py复制到了这个子目录中

  install:

python setup.py install
#输出比较多,末尾的内容类似下面:
Installed /path/to/python3.5/site-packages/Hello-1.0-py3.5.egg
Processing dependencies for Hello == 1.0
Finished processing dependencies for Hello == 1.0 bute-compiling

    注意:如果运行的python版本不是自己安装的,且没有合适的权限;可能被禁止安装模块,因为没有写入相应目录的权限。

    这就是用于安装python模块、包和扩展的标准机制。

 

2.打包

    编写让用户能够安装模块的脚本setup.py之后,就可以使用它来创建归档文件了。

    还可使用它来创建windows安装程序、rpm包、egg文件、wheel文件等(wheel将最终取代egg)

    如何创建.tar.gz文件

    要创建源代码归档文件,可使用命令sdist(source distribution)

    python setup.py sdist

    如果执行上述命令,可能会出现大量的输出(包含警告),可在脚本setup.py中添加author_email(类似于选项author),并在当前目录中添加文本文件README.txt

     待补充~

推荐阅读