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中操作文件之truncate()方法的使用教程
May 25 Python
python去除空格和换行符的实现方法(推荐)
Jan 04 Python
教你用一行Python代码实现并行任务(附代码)
Feb 02 Python
python构建深度神经网络(续)
Mar 10 Python
Python实现OpenCV的安装与使用示例
Mar 30 Python
Python3.6连接Oracle数据库的方法详解
May 18 Python
python实现鸢尾花三种聚类算法(K-means,AGNES,DBScan)
Jun 27 Python
Python实现代码统计工具
Sep 19 Python
Python3和PyCharm安装与环境配置【图文教程】
Feb 14 Python
python GUI库图形界面开发之PyQt5线程类QThread详细使用方法
Feb 26 Python
Python连接Hadoop数据中遇到的各种坑(汇总)
Apr 14 Python
在Windows上安装和配置 Jupyter Lab 作为桌面级应用程序教程
Apr 22 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
Smarty+QUICKFORM小小演示
2007/02/25 PHP
php打开远程文件的方法和风险及解决方法
2013/11/12 PHP
php中AES加密解密的例子小结
2014/02/18 PHP
MyEclipse常用配置图文教程
2014/09/11 PHP
php curl 获取https请求的2种方法
2015/04/27 PHP
PHPExcel实现表格导出功能示例【带有多个工作sheet】
2018/06/13 PHP
如何实现JS函数的重载
2006/09/22 Javascript
检测jQuery.js是否已加载的判断代码
2011/05/20 Javascript
jQuery 遍历-nextUntil()方法以及prevUntil()方法的使用介绍
2013/04/26 Javascript
js实现的map方法示例代码
2014/01/13 Javascript
JS数组去重与取重的示例代码
2014/01/24 Javascript
js 弹出新页面避免被浏览器、ad拦截的一种新方法
2014/04/30 Javascript
js仿黑客帝国字母掉落效果代码分享
2020/11/08 Javascript
iScroll.js 使用方法参考
2016/05/16 Javascript
全面理解JavaScript中的继承(必看)
2016/06/16 Javascript
jQuery插件autocomplete使用详解
2017/02/04 Javascript
element 结合vue 在表单验证时有值却提示错误的解决办法
2018/01/22 Javascript
JavaScript实现获取select下拉框中第一个值的方法
2018/02/06 Javascript
vue.js过滤器+ajax实现事件监听及后台php数据交互实例
2018/05/22 Javascript
如何手动实现es5中的bind方法详解
2018/12/07 Javascript
解决Vue打包后访问图片/图标不显示的问题
2019/07/25 Javascript
Vue路由的模块自动化与统一加载实现
2020/06/05 Javascript
python实现分页效果
2017/10/25 Python
Ubuntu下使用Python实现游戏制作中的切分图片功能
2018/03/30 Python
python3.5绘制随机漫步图
2018/08/27 Python
python爬虫神器Pyppeteer入门及使用
2019/07/13 Python
python腾讯语音合成实现过程解析
2019/08/01 Python
python 中Arduino串口传输数据到电脑并保存至excel表格
2019/10/14 Python
Python中的全局变量如何理解
2020/06/04 Python
CSS3绘制超炫的上下起伏波动进度加载动画
2016/04/21 HTML / CSS
Expedia丹麦:全球领先的旅游网站
2018/03/18 全球购物
妈妈的账单教学反思
2014/02/06 职场文书
教师校本培训方案
2014/02/26 职场文书
党建示范点实施方案
2014/03/12 职场文书
2015年全国爱耳日活动总结
2015/02/27 职场文书
MySQL视图概念以及相关应用
2022/04/19 MySQL