转载自: 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打包的更多相关文章

  1. 转载:Python 包管理工具解惑

    Python 包管理工具解惑 本站文章除注明转载外,均为本站原创或者翻译. 本站文章欢迎各种形式的转载,但请18岁以上的转载者注明文章出处,尊重我的劳动,也尊重你的智商: 本站部分原创和翻译文章提供m ...

  2. Python程序的打包-上传到pypi

    pypi注册与配置 在pypi的官网:https://pypi.python.org/pypi 注册自己的账号激活账号之后,我们还需要将在本地配置一份文件 在用户的根目录创建文件 : .pypirc在 ...

  3. python开发环境配置和python源码打包生成exe可执行文件

    Windows下开发环境准备 1.分别安装:python2和python32.安装Python的集成工具:Anaconda3.安装Pycharm Pycharm设置 设置: File->Sett ...

  4. python模块的打包

    python模块的打包方法: http://blog.csdn.net/five3/article/details/7847551

  5. Python Windows下打包成exe文件

    Python Windows 下打包成exe文件,使用PyInstaller 软件环境: 1.OS:Win10 64 位 2.Python 3.7 3.安装PyInstaller 先检查是否已安装Py ...

  6. Python服务Debian打包新思路

    此文已由作者张耕源授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. Debian 打包一直是比较冷僻的技术,大部分同学都不会接触到它. 但是我们 Debian 服务器上安装的各 ...

  7. [转载] Python数据类型知识点全解

    [转载] Python数据类型知识点全解 1.字符串 字符串常用功能 name = 'derek' print(name.capitalize()) #首字母大写 Derek print(name.c ...

  8. Python selenium chrome打包exe后禁用控制台输出滚动日志

    Python selenium chrome打包exe后,在运行的过程中,如果遇到需要input()输入时,会发现被不断滚动刷新的日志把命令行输入快速顶掉了,通过查阅资料不断实践,发现以下方法有效: ...

  9. [转载]Python 包管理工具

    [转载]Python 包管理工具 最近由于机缘巧合,使用各种方法安装了一些Python包,所以对Python的包管理开始感兴趣.在网上找到一篇很好的文章:https://blog.zengrong.n ...

随机推荐

  1. Codechef MARCH14 GERALD07加强版

    强制在线不代表不能预处理! 考虑暴力怎么干? 开始n个联通块.now=n 不断加入边,如果连接两个联通块,--now 否则不动. 后者的前提是和[l,id-1]的边构成环 所以,我们考虑每个[l,r] ...

  2. [mysql]修改表段默认值

    alter table xxx alter location drop default; alter table xxx alter location set default "xxx&qu ...

  3. printk打印机别

    1.查看当前控制台的打印级别 cat /proc/sys/kernel/printk 4    4    1    7 其中第一个“4”表示内核打印函数printk的打印级别,只有级别比他高的信息才能 ...

  4. JAVA、android中常用的一些jar包的作用

    正文: 这里主要介绍的是hibernate使用到的.jar Hibernate一共包括了23个jar包,令人眼花缭乱.本文将详细讲解Hibernate每个jar包的作用,便于你在应用中根据自己的需要进 ...

  5. 第一篇 关于Android Studio的快捷键

    公司最近要培训Android的课程,但是发现现在官方网站上已经不提供了Eclipse ADT的下载了,都变成了Android Studio,可能是悲催了! 对于很多Eclipse转过来的同学,不适应的 ...

  6. PowerDesigner16 活动图

    活动是某件事情正在进行的状态.活动在状态机中表现为一个由一系列动作组成 的非原子的执行过程. 活动图是一种描述系统行为的图,它用于展现 参与行为的实体所进行的各种活动的顺序关系.活动图(Activit ...

  7. UIImageView与UIScrollView的关系图

        UIImageView与UIScrollView的关系图           https://www.evernote.com/shard/s227/sh/0af9f23c-08e6-4be6 ...

  8. HDU 2546 饭卡 (dp)

    题目链接 Problem Description 电子科大本部食堂的饭卡有一种很诡异的设计,即在购买之前判断余额.如果购买一个商品之前,卡上的剩余金额大于或等于5元,就一定可以购买成功(即使购买后卡上 ...

  9. vue数组操作不触发前端重新渲染

    暂时使用给数组先赋值 [ ] ,然后重新赋值的方式解决. 此外,能够监听的数组变异方法 https://cn.vuejs.org/v2/guide/list.html#%E5%8F%98%E5%BC% ...

  10. TDD随想录

    TDD随想录 谨以本文献给TDD的开创者与传播者 本文纯属个人经历,如有雷同纯属巧合 我从不觉得自己是一个好的程序员,甚至可能连合格都谈不上,不过在内心深处我却渴望着在编程这件事上获得成功. 可惜每次 ...