python的第三方模块越来越丰富,涉及的领域也非常广,如科学计算、图片处理、web应用、GUI开发等。当然也可以将自己写的模块进行打包或发布。
一简单的方法是将你的类包直接copy到python的lib目录,但此方式不便于管理与维护,存在多个python版本时会非常混乱。现介绍如何编写
setup.py来对一个简单的python模块进行打包。
一、编写模块
进入项目目录
#cd /home/pysetup
#vi foo.py
二、编写setup.py
#vi setup.py
更多参数说明见表:
三、setup.py参数说明
#python setup.py build # 编译
#python setup.py install #安装
#python setup.py sdist #生成压缩包(zip/tar.gz)
#python setup.py bdist_wininst #生成NT平台安装包(.exe)
#python setup.py bdist_rpm #生成rpm包
或者直接"bdist 包格式",格式如下:
#python setup.py bdist --help-formats
--formats=rpm RPM distribution
--formats=gztar gzip'ed tar file
--formats=bztar bzip2'ed tar file
--formats=ztar compressed tar file
--formats=tar tar file
--formats=wininst Windows executable installer
--formats=zip ZIP file
四、打包
#python setup.py sdist
running sdist
warning: sdist: manifest template 'MANIFEST.in' does not exist (using default file list)
warning: sdist: standard file not found: should have one of README, README.txt
writing manifest file 'MANIFEST'
creating Myblog-1.0
making hard links in Myblog-1.0...
hard linking foo.py -> Myblog-1.0
hard linking setup.py -> Myblog-1.0
creating dist
tar -cf dist/Myblog-1.0.tar Myblog-1.0
gzip -f9 dist/Myblog-1.0.tar
removing 'Myblog-1.0' (and everything under it)
提示两条warning可以忽略,不影响打包,当然一个完善的项目必须有README及MANIFEST.in(项目文件清单)文件。
#ls dist
Myblog-1.0.tar.gz
五、安装
#tar -zxvf Myblog-1.0.tar.gz
#cd Myblog-1.0.tar.gz
#python setup.py install (此命令大家再熟悉不过了)
running install
running build
running build_py
creating build/lib.linux-x86_64-2.6
copying foo.py -> build/lib.linux-x86_64-2.6
running install_lib
copying build/lib.linux-x86_64-2.6/foo.py -> /usr/local/lib/python2.6/dist-packages
byte-compiling /usr/local/lib/python2.6/dist-packages/foo.py to foo.pyc
running install_egg_info
Writing /usr/local/lib/python2.6/dist-packages/Myblog-1.0.egg-info
六、测试
>>> from foo import MyClass
>>> app=MyClass()
>>> app.print printblog()
>>> app.printblog()
http://blog.liuts.com
>>> app.printBblog()
HTTP://BLOG.LIUTS.COM
>>>
参考文献:
http://docs.python.org/distutils/setupscript.html
分享到:
相关推荐
总结一下,"win7解决python打包EXE不能运行升级包.rar"是为了解决Python打包的EXE在Windows 7系统下无法运行的问题。通过安装提供的MSU更新包,可以修复系统兼容性问题,使得打包的Python程序能在Win7环境下顺利执行...
使用python打包生成exe文件,win7 64位和32位均可运行 当前环境说明: win7 64位,已安装python3.6-64位版本 python3.6-64位环境变量已配置 问题:win7 64位打包成exe文件后,不能在32位系统运行 需求:...
Python打包工具.exe
Python打包软件是一个重要的工具,它使得开发者能够将Python源代码转换为独立的.exe可执行文件,以便在没有Python环境的Windows计算机上运行。这个过程通常涉及到使用特定的打包工具,如PyInstaller,它是一个流行的...
在Linux环境下离线安装Python打包环境,主要是为了创建可执行程序,这通常涉及到Python的解释器、库依赖以及打包工具。以下将详细讲解这个过程的关键步骤和涉及的组件。 首先,`pyinstaller`是Python中广泛使用的...
Python打包是将Python程序及其依赖项整合成一个可执行文件或独立的软件包的过程,这样用户无需安装Python环境即可运行程序。这个过程涉及到多个知识点,包括模块化、虚拟环境、打包工具、部署策略等。接下来,我们将...
QPT - Python程序模块化封装工具(Py转EXE),快速将Python打包为EXE并添加CUDA、NoAVX等支持。QPT是一款可以“模拟”开发环境的多功能封装工具,最短只需一行命令即可将普通的Python脚本打包成EXE可执行程序,并...
Python 解决图片不能被一同打包到可执行文件中的问题 Python源码Python 解决图片不能被一同打包到可执行文件中的问题 Python源码Python 解决图片不能被一同打包到可执行文件中的问题 Python源码Python 解决图片不能...
python3 安装:cython pip3 install cython -i http://mirrors.aliyun.com/pypi/simple/ pip国内的一些镜像 阿里云 http://mirrors.aliyun.com/pypi/simple/ 中国科技大学 ...
当需要把自己写的程序移植到没有安装python的计算机时,需要将自身程序打包。
Python打包exe环境,经过测试,可在win10x64,xp-x86上面安装使用,打包出来的exe可在32位系统下运行, python2.7.14 32位,pywin32,pyinstaller-2.0 ,upx308w
Python打包工具是针对Python开发的程序进行封装,使其能够以独立的可执行文件形式运行的实用工具。在Python编程环境中,通常编写好的源代码需要在目标机器上安装相应的Python环境才能运行,这对于分发和部署应用程序...
标题"python打包EXE例子脚本"提及的是一个关于Python打包成EXE的实践案例。这通常涉及到使用第三方工具,如`PyInstaller`或`cx_Freeze`。这两个工具都能将Python源代码转换为独立的可执行文件,使非Python环境的用户...
"兼容版64位和32位系统的python打包exe"这个主题旨在解决在64位和32位操作系统之间运行Python程序的挑战。 首先,我们要理解Python的位数版本差异。Python有32位和64位两种版本,主要区别在于它们能够处理的内存...
Python程序打包 Python程序打包是将Python脚本转换为可执行文件的过程,方便用户使用而不需要安装Python和相关依赖库。 Python程序打包有多种方式,包括.py、.pyc和可执行文件等。 .py文件:是Python脚本文件,...
PyInstaller是另一个广泛使用的Python打包工具,它可以生成单文件可执行程序,也可以创建独立的发行包。PyInstaller支持Windows、Linux、macOS等多种平台,使得你的Python程序可以轻松地跨平台运行。 1. 安装...
3. **PyInstaller**:这是一个Python打包工具,可以将Python程序转换为独立的可执行文件,便于分发和运行。但它并不自动处理所有依赖项,尤其是像VC++ Redistributable这样的非Python依赖。 解决方案: 1. **安装...
今天写了个Python小程序,打包exe后在我的电脑上运行一直提示缺少dll文件,我下载了2015vc库合集也没解决这个问题,后来从上网找到的资源,如果电脑缺少dll文件,可以下载此文件,也可到微软官网自行下载
详细介绍python工程打包成linux可执行文件
标题 "python 打包后win7丢失api-ms-win-core-path无法启动" 描述了一个常见的问题,即使用Python打包工具(如PyInstaller)生成的可执行文件在Windows 7系统上运行时,可能会遇到“api-ms-win-core-path”缺失的...