如何把程序打包为whl
首先需要一个库:setuptools
如果是conda环境的话,这个包是自带的,不需要另外安装。
首先把需要打包的py文件放在一个文件夹内(我的文件夹名为coordTrans,记住这个名字,后面要用)。
同时,该文件夹内还需要有一个名字为__init__.py的文件,该py程序内容为空也可以,但必须有,因为这是包的引导初始化文件。
然后,在文件夹coordTrans的上一级文件夹内,创建setup.py程序,里面的内容如下:
setup.py
from setuptools import setup,find_packages setup( name='coordTrans', version='1.0.0', description='Coordinate transform', packages = find_packages(), py_modeles = 'coordTransfer.py', author='weiw', pakages=['coordTransfer'], )
setup函数各参数详解
- --name包名称
- --version (-V)包版本
- --author程序的作者
- --author_email程序的作者的邮箱地址
- --maintainer维护者
- --maintainer_email维护者的邮箱地址
- --url 程序的官网地址
- --license 程序的授权信息
- --description 程序的简单描述
- --long_description程序的详细描述
- --platforms 程序适用的软件平台列表
- --classifiers 程序的所属分类列表
- --keywords程序的关键字列表
- --packages需要打包的目录列表
- --py_modules需要打包的python文件列表
- --download_url程序的下载地址
- --cmdclass
- --data_files打包时需要打包的数据文件,如图片,配置文件等
- --scripts安装时需要执行的脚步列表
在setup.py文件所在路径下运行cmd运行打包命令,要打包成egg文件或whl文件,需要改变最后传入的参数。
1、python setup.py bdist_egg #打包为egg文件
或者
2、python setup.py bdist_wheel #打包为whl文件
我这里打包为whl文件:
运行后会在当前目录多出3个文件夹:build、dist、driver.egg-info
打包好后的whl文件在dist文件夹内,进入dist文件夹中安装whl文件:
现在就可以安装这个包了:
最后,就可以在程序中导入这个包了
其中coordTrans为包名(文件夹名),也就是文章开头,让你记住的那个文件夹;coordTransfer为文件夹内的py文件名。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/weixin_41951954/article/details/128631644