发布于2024-11-01 22:12 阅读(700) 评论(0) 点赞(28) 收藏(0)
目录
便于分发:.whl
文件是一种Python分发包格式,它允许开发者将代码和资源打包在一起,方便其他用户或开发者下载和安装。
兼容性:Wheel文件格式是跨平台的,可以在不同的操作系统上使用,比如Windows、Linux和macOS。
安装速度:与源代码包相比,Wheel文件通常安装速度更快,因为它们是预编译的,不需要用户在安装时编译。
依赖管理:Wheel文件可以包含项目的依赖信息,使得安装过程更加自动化,减少了因缺少依赖而出现的问题。
版本控制:通过打包成.whl
文件,可以清晰地管理不同版本的项目,便于用户选择和升级。
避免污染环境:使用Wheel文件安装的包通常不会修改全局Python环境,这有助于避免不同项目间的依赖冲突。
简化开发流程:开发者可以通过Wheel文件快速测试和部署他们的项目,无需担心环境配置问题。
支持额外的元数据:Wheel文件可以包含额外的元数据,如项目的描述、作者信息、许可证等,有助于用户了解和使用项目。
支持二进制文件:Wheel文件可以包含编译后的二进制文件,这对于包含C扩展的Python项目尤为重要,可以避免用户在安装时重新编译。
提高安全性:通过使用可信的Wheel文件源,可以减少从不可信任源下载代码的风险,提高项目的安全性。
在同一个文件夹whiltest下放入python程序和setup程序
目录格式如下:
- whltest
- Method.py
- setup.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)
- from setuptools import setup
- setup(name='Method',
- version='1.0',
- py_modules=['Method'],
- )
CMD进入setup.py所在目录执行如下命令:
python setup.py bdist_wheel
在同目录会生成多个文件夹,其中dist文件夹下就是打包成的whl包。
build
文件夹通常在构建完成后就不再需要了,除非需要进行调试或查看构建过程的详细信息。在发布或分发项目时,通常只关心最终生成的.whl
文件。
我使用的是anaconda3,进入对应环境执行如下命令安装:
pip install whl对应全路径
将多个py文件和__init__.py放在同一个目录下,setup.py要和此目录同级。
目录格式如下:
- packageTest
- Test
- __init__.py
- Print.py
- get_data.py
- setup.py
内容为空
- def get_info(x):
- print("x = ",x)
- def get_data(x):
- x1 = 3*x
- return x1
- from setuptools import setup
-
- setup(name='test',
- version='1.0',
- description='test',
- author='xy',
- author_email='123456@qq.com',
- packages=['test'],
- )
同样CMD进入setup.py同级目录下执行如下命令:
python setup.py bdist_wheel
我使用的是anaconda3,进入对应环境执行如下命令安装:
同单个python文件打包的五步骤;
作者:外星人入侵
链接:https://www.pythonheidong.com/blog/article/2040831/48b48ab558cc387c4e3d/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!