【转载】Python,使用Wheel打包

摘要:
所有设计为包含PEP376兼容安装的文件(格式与磁盘上的格式非常相似)“我们将学习如何创建轮子以及如何在virtualenv中安装轮子。让我们学习如何安装新创建的轮子。确保您在s文件夹中运行activate以启用virtualenv,因此您需要再次安装轮子。我们将使用以下命令安装我们之前创建的轮子。

转载自: http://blog.sina.com.cn/s/blog_1318255b00102wbtz.html

  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.whlwheel,让我们来学习安装新创建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打包》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇MySQL-添加索引或字段时如何不锁表C/C++(基础编码-补码详解)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

jemter上传到服务器进行压测

1.xshell连接服务器;                                              连接成功 2.压测机器申请,要申请权限才可访问到机器。 3.进入压测执行阶段,使用手动命令的方式完成操作,根据实际情况,是采用1台压力机还是多台压力机进行分布式压测。(提前讲多台压力机分布式压测配置好,master机器 x.x.x.x...

将项目上传到gitee

1、在gitee创建项目 2、进入本地项目目录 git init #初始化 git add . #将当前目录加入到git git com...

mysql查看binlog日志

mysql查看binlog日志    业内目前推荐使用的是row模式,准确性高,虽然说文件大,但是现在有SSD和万兆光纤网络,这些磁盘IO和网络IO都是可以接受的。 那么,大家一定想问,为什么不推荐使用mixed模式,理由如下假设master有两条记录,而slave只有一条记录。master的数据为 +----+--------------------...

JavaScript向XML文档存储,读取和修改数据

基础知识1、var fso=new ActiveXObject("Scripting.FileSystemObject");创建一个可以操作系统文件的ActiveXObject对像的实例。2、file=fso.GetFile("C:\\test.xml");  用ActiveXObject对像访问系统文件,可以用来检查文件是否存在。3、file=fso.C...

Linux终端快速检测网站是否宕机的6个方法

方法 1:使用 fping 命令检测一个网站是否宕机 fping 命令 是一个类似 ping 的程序,使用互联网控制消息协议(ICMP)的 回应请求报文echo request 来判断目标主机是否能回应。 fping 与 ping 的不同之处在于它可以并行地 ping 任意数量的主机,也可以从一个文本文件读入主机名称。 fping 发送一个 ICMP 回应...

简单应用复旦FNLP自然语言处理工具(一)

FNLP是一个基于机器学习的中文自然语言文本处理的开发工具包,FNLP主要是为中文自然语言处理而开发的工具包,也包含为实现这些任务的机器学习算法和数据集。                                                      ----------百度百科 信息检索 文本分类 新闻聚类 中文处理: 中文分词 词性标注...