Python 小知识,wheel 文件的说明与使用

举报
梦想橡皮擦 发表于 2022/08/31 15:21:00 2022/08/31
【摘要】 ⛳️ 需求实战背景.whl 文件是以 wheel 格式保存的安装包,而且 wheel 是 Python 发行版标准内置包,其包含 Python 所有安装文件,wheel 文件使用 zip 格式压缩,本质也是压缩文件。按照官方说法,wheel 格式的包,是发行版 Python 的新标准,而且其目的是取代 .egg,Egg 格式是由 setuptools 在 2004 年引入,而 Wheel ...

⛳️ 需求实战背景

.whl 文件是以 wheel 格式保存的安装包,而且 wheel 是 Python 发行版标准内置包,其包含 Python 所有安装文件,wheel 文件使用 zip 格式压缩,本质也是压缩文件。

按照官方说法,wheel 格式的包,是发行版 Python 的新标准,而且其目的是取代 .egg,Egg 格式是由 setuptools 在 2004 年引入,而 Wheel 格式是由 PEP427 在 2012 年定义,现在主流离线按照一般采用该形式。

使用 .whl 文件进行包安装,在 Python 中也叫做包的离线安装。

如果需要下载 whl 文件,可以从下述两个站点下载,其中 pypi 站点最全。

如果希望安装 whl 文件,需提前安装 wheel 包,使用 pip install wheel

安装之后,可查看一下包详情。

> pip show wheel
Name: wheel
Version: 0.37.1
Summary: A built-package format for Python
Home-page: https://github.com/pypa/wheel
Author: Daniel Holth
Author-email: dholth@fastmail.fm
License: MIT
Location: e:\python38\lib\site-packages
Requires:
Required-by: pip-tools

⛳️ 安装实战

www.lfd.uci.edu/~gohlke/pythonlibs/ 中随机选择一个离线包,例如 PyAMGPyAudio,找一下 Python 对应版本,如果按照 Python2 和 Python3 进行统计。

下载 whl 文件之后,可以放置到本地任意目录,然后进行安装。

安装命令使用 pip install whl文件名,即可实现。

pip install whl文件名

如果包和本地环境不匹配,出现如下错误,此时去平台下载其它 whl 文件,最好的是源码托管位置下载其它版本,进行替换即可。

ERROR: pyamg‑4.2.3‑cp38‑cp38‑win_amd64.whl is not a supported wheel on this platform.

如果 whl 离线包没有问题,会出现如下提示,表示安装成功。

>pip install PyAudio-0.2.11-cp38-cp38-win_amd64.whl
Processing c:\users\administrator\downloads\pyaudio-0.2.11-cp38-cp38-win_amd64.whl
Installing collected packages: PyAudio
Successfully installed PyAudio-0.2.11

如果安装出错,还有一种可能性是 whl 文件的命名格式和系统支持的格式不同,优先查看一下系统命名格式。

有的博客中会让大家安装 pep425tags 库,查看 whl 命名格式,但最新版本的 Python 中并无该库支持,所以很多时候都会报错。

你可以使用如下命令查询:

pip debug --verbose

查询结果中包含如下信息,其格式如下所示,可以尝试修改文件名,再次进行安装,可解决少数问题。

如果你对 whl 文件还有兴趣,可以将其解压,查看内部源码。

📢📢📢📢📢📢
💗 你正在阅读 【梦想橡皮擦】 的博客
👍 阅读完毕,可以点点小手赞一下
🌻 发现错误,直接评论区中指正吧
📆 橡皮擦的第 715 篇原创博客

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。