python中wheel的用法整理


Posted in Python onJune 15, 2020

Python的第一个主流打包格式是.egg文件,现在大家庭中又有了一个叫做Wheel(*.whl)的新成员。wheel“被设计成包含PEP 376兼容安装(一种非常接近于磁盘上的格式)的所有文件”。在本文中,我们将学习如何创建一个wheel以及如何在virtualenv中安装wheel。

起步

你需要pip来创建wheel,要学习安装pip,我强烈推荐阅读pip的安装页面

。如果你已经安装了pip,那么你需要把它升级到最新版本。你只需要做这些:在一个控制台窗口中,输入以下命令:

pip install --upgrade pip

完成以上工作后,我们就准备学习创建wheel了!

创建wheel

首先,你需要安装wheel包:

pip install wheel

下一步,我们将使用unidecode包来创建我们的第一个wheel,因为当我在写本文的时候,我们的wheel包还没有创建出来,接下来我会在多个项目中使用这个包。

pip wheel --wheel-dir=my_wheels Unidecode

现在,你在my_wheels文件夹中有了名字为Unidecode-0.04.14-py26-none-any.whl的wheel,让我们来学习安装新创建的wheel!

安装Python

wheel

让我们创建一个virtualenv

来进行测试,你可以在这里读取更多关于virtualenv的信息。一旦你安装了virtualenv,使用下面的命令来测试:

virtualenv test

这将为我们创建一个包含pip的可试验虚拟沙箱,在继续下一步之前,确信运行了s文件夹中的activate来使能virtualenv。现在virtualenv没有包括wheel,所以你需要再次安装wheel:

pip install wheel

一旦wheel安装,我们就使用如下命令来安装我们之前创建的wheel:

pip install --use-wheel --no-index --find-links=path/to/my_wheels Unidecode

为了测试运行是否正常,从你virtualenv的s文件夹中运行Python并且尝试导入unidecode。如果它正常导入,那么你成功的安装了你之前创建的wheel!

注解:我开始的时候安装了一个麻烦多多的旧版本virtualenv。确信你升级到了最新版本,或者你花费大量时间去折腾让它正常工作。

*.whl文件有一点与*.egg文件相似:实际上它们都是“伪装的”*.zip文件。如果你将*.whl文件名扩展改为*.zip,你就可以使用你的zip应用程序打开它,并且可以查看它包含的文件和文件夹。

总结

现在你已经准备好创建你自己的wheel了,那就像为你自己的快速安装项目创建本地仓库的一个很好地方法。你可以创建多个不同的wheel仓 库,这便与在不同测试版本之间切换。当与virtualenv结合后,你就会有一个很便捷的方法,通过该方法,你看到新版本的依赖如何在不需要多次下载它 们的情况下作用于你的项目。

知识点扩展:

Python wheel包文件名格式

0.12.4 - package 版本

cp36 - python实现和版本, cp:CPython. ip:IronPython, jy:Jython, orpp: PyPy,  版本:3.6.

cp36m - abi tag

win_amd64 - 系统平台 tag

到此这篇关于python中wheel的用法整理的文章就介绍到这了,更多相关python wheel是什么内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
实例讲解Python中global语句下全局变量的值的修改
Jun 16 Python
Python二叉树的定义及常用遍历算法分析
Nov 24 Python
分析python动态规划的递归、非递归实现
Mar 04 Python
Appium+python自动化之连接模拟器并启动淘宝APP(超详解)
Jun 17 Python
用pyqt5 给按钮设置图标和css样式的方法
Jun 24 Python
详细介绍pandas的DataFrame的append方法使用
Jul 31 Python
python 实现dict转json并保存文件
Dec 05 Python
Pycharm使用远程linux服务器conda/python环境在本地运行的方法(图解))
Dec 09 Python
python读取dicom图像示例(SimpleITK和dicom包实现)
Jan 16 Python
Python‘==‘ 及 ‘is‘相关原理解析
Sep 05 Python
python时间time模块处理大全
Oct 25 Python
使用Python制作一盏 3D 花灯喜迎元宵佳节
Feb 26 Python
keras绘制acc和loss曲线图实例
Jun 15 #Python
Python定义一个函数的方法
Jun 15 #Python
python是怎么被发明的
Jun 15 #Python
Keras 利用sklearn的ROC-AUC建立评价函数详解
Jun 15 #Python
Python如何在windows环境安装pip及rarfile
Jun 15 #Python
keras训练曲线,混淆矩阵,CNN层输出可视化实例
Jun 15 #Python
Python3 requests模块如何模仿浏览器及代理
Jun 15 #Python
You might like
php面向对象全攻略 (九)访问类型
2009/09/30 PHP
PHP删除数组中空值的方法介绍
2014/04/14 PHP
PHP类的特性实例分析
2016/09/28 PHP
thinkPHP5.0框架模块设计详解
2017/03/18 PHP
laravel excel 上传文件保存到本地服务器功能
2019/11/14 PHP
javascript 页面只自动刷新一次
2009/07/10 Javascript
nodejs命令行参数处理模块commander使用实例
2014/09/17 NodeJs
JQuery.get提交页面不跳转的解决方法
2015/01/13 Javascript
使用纯javascript实现放大镜效果
2015/03/18 Javascript
jquery实现两个图片渐变切换效果的方法
2015/06/25 Javascript
学习JavaScript设计模式之中介者模式
2016/01/14 Javascript
JavaScript实现广告弹窗效果
2016/08/09 Javascript
详解webpack3如何正确引用并使用jQuery库
2017/08/26 jQuery
js Dom实现换肤效果
2017/10/21 Javascript
JS中的防抖与节流及作用详解
2019/04/01 Javascript
nodemon实现Typescript项目热更新的示例代码
2019/11/19 Javascript
Vue结合路由配置递归实现菜单栏功能
2020/06/16 Javascript
Django保护敏感信息的方法示例
2019/05/09 Python
创建Django项目图文实例详解
2019/06/06 Python
python实现回旋矩阵方式(旋转矩阵)
2019/12/04 Python
如何定义TensorFlow输入节点
2020/01/23 Python
Python爬取新型冠状病毒“谣言”新闻进行数据分析
2020/02/16 Python
django-orm F对象的使用 按照两个字段的和,乘积排序实例
2020/05/18 Python
matplotlib基础绘图命令之imshow的使用
2020/08/13 Python
CSS3的resize属性使用初探
2015/09/27 HTML / CSS
Free People中国官网:波西米亚风格女装服饰
2016/08/30 全球购物
美国猫狗药物和用品网站:PetCareRx
2017/01/05 全球购物
美国高端寝具品牌:Coyuchi
2017/02/08 全球购物
艺术系大学生毕业个人自我评价
2013/09/19 职场文书
大学生考试作弊检讨书
2014/09/21 职场文书
先进单位申报材料
2014/12/25 职场文书
长江三峡导游词
2015/01/31 职场文书
工程部部长岗位职责
2015/02/12 职场文书
大学生党员个人总结
2015/02/13 职场文书
Pytorch GPU内存占用很高,但是利用率很低如何解决
2021/06/01 Python
pd.drop_duplicates删除重复行的方法实现
2022/06/16 Python