首先需要一个库: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文件名。