1,打包whl文件作用
- 便于分发:
.whl
文件是一种python分发包格式,它允许开发者将代码和资源打包在一起,方便其他用户或开发者下载和安装。 - 兼容性:wheel文件格式是跨平台的,可以在不同的操作系统上使用,比如windows、linux和macos。
- 安装速度:与源代码包相比,wheel文件通常安装速度更快,因为它们是预编译的,不需要用户在安装时编译。
- 依赖管理:wheel文件可以包含项目的依赖信息,使得安装过程更加自动化,减少了因缺少依赖而出现的问题。
- 版本控制:通过打包成
.whl
文件,可以清晰地管理不同版本的项目,便于用户选择和升级。 - 避免污染环境:使用wheel文件安装的包通常不会修改全局python环境,这有助于避免不同项目间的依赖冲突。
- 简化开发流程:开发者可以通过wheel文件快速测试和部署他们的项目,无需担心环境配置问题。
- 支持额外的元数据:wheel文件可以包含额外的元数据,如项目的描述、作者信息、许可证等,有助于用户了解和使用项目。
- 支持二进制文件:wheel文件可以包含编译后的二进制文件,这对于包含c扩展的python项目尤为重要,可以避免用户在安装时重新编译。
- 提高安全性:通过使用可信的wheel文件源,可以减少从不可信任源下载代码的风险,提高项目的安全性。
2,单个python文件打包
1、程序目录
在同一个文件夹whiltest下放入python程序和setup程序
目录格式如下:
whltest method.py setup.py
2、程序内容
- method.py
class method: def __init__(self,name,age): self.f_name = name self.f_age = age print("init success",self.f_name,self.f_age) def getinfo(name,age): print(name+"#######"+age) def my_getinfo(self): print(self.f_name,"##########",self.f_age)
- setup.py
from setuptools import setup setup(name='method', version='1.0', py_modules=['method'], )
3、打whl包
cmd进入setup.py所在目录执行如下命令:
python setup.py bdist_wheel
在同目录会生成多个文件夹,其中dist文件夹下就是打包成的whl包。
build文件夹通常在构建完成后就不再需要了,除非需要进行调试或查看构建过程的详细信息。在发布或分发项目时,通常只关心最终生成的.whl文件。
4、将whl包导入环境
我使用的是anaconda3,进入对应环境执行如下命令安装:
pip install whl对应全路径
5、查看效果
6、代码验证
3、多个python文件打包
1、程序目录
将多个py文件和__init__.py放在同一个目录下,setup.py要和此目录同级。
目录格式如下:
packagetest test __init__.py print.py get_data.py setup.py
2、程序内容
- print.py
def get_info(x): print("x = ",x)
- get_data.py
def get_data(x): x1 = 3*x return x1
- setup.py
from setuptools import setup setup(name='test', version='1.0', description='test', author='xy', author_email='123456@qq.com', packages=['test'], )
3、打whl包
同样cmd进入setup.py同级目录下执行如下命令:
python setup.py bdist_wheel
4、将whl包导入环境
我使用的是anaconda3,进入对应环境执行如下命令安装:
5、查看效果
同单个python文件打包的五步骤;
6、代码验证
到此这篇关于手把手教你打包python项目为whl文件的文章就介绍到这了,更多相关python打包项目为whl文件内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论