[python]从whl文件名认识支持python版本和操作系统
whl文件是python专用模块,命令规则都是有一定规律的。我们可以轻松从whl文件名获取适配版本号和适配系统。下面举例子说明:
【示例1】
TA_Lib-0.4.28-cp311-cp311-win_amd64.whl
是一个 Python 包的安装文件,具体来说是 TA-Lib(Technical Analysis Library)的 Windows 平台 64 位二进制分发包,适用于 Python 3.11。以下是对该文件名各部分的解析:
TA_Lib
:- 这是包的名称,表示 Technical Analysis Library,一个用于技术分析的库,提供了各种金融指标的计算方法。
0.4.28
:- 这是包的版本号,表示这是 TA-Lib 的 0.4.28 版本。
cp311
:- 这表示该包是为 Python 3.11 编译的。
cp
是 CPython 的缩写,后面跟着的数字表示 Python 的版本。表示只能在python3.11环境下面使用
- 这表示该包是为 Python 3.11 编译的。
win_amd64
:- 这表示该包是为 Windows 操作系统和 AMD64(即 x86-64)架构编译的,即windows x64系统。
.whl
:- 这是文件扩展名,表示这是一个 Wheel 文件。Wheel 是 Python 的一种分发格式,用于简化 Python 包的安装过程。
【示例2】
ta_lib-0.6.3-cp310-cp310-win32.whl
是一个 Python 包的安装文件,具体来说是 TA-Lib(Technical Analysis Library)的 Windows 平台 32 位二进制分发包,适用于 Python 3.10。以下是对该文件名各部分的解析:
ta_lib
:- 这是包的名称,表示 Technical Analysis Library,一个用于技术分析的库,提供了各种金融指标的计算方法。
0.6.3
:- 这是包的版本号,表示这是 TA-Lib 的 0.6.3 版本。
cp310
:- 这表示该包是为 Python 3.10 编译的。
cp
是 CPython 的缩写,后面跟着的数字表示 Python 的版本。只支持python3.10版本
- 这表示该包是为 Python 3.10 编译的。
win32
:- 这表示该包是为 Windows 操作系统和 32 位架构编译的。即windows x86系统或者x64系统中32位python版本
.whl
:- 这是文件扩展名,表示这是一个 Wheel 文件。Wheel 是 Python 的一种分发格式,用于简化 Python 包的安装过程。
【示例3】
ta_lib-0.6.3-cp312-cp312-win_arm64.whl
是一个 Python 包的安装文件,具体来说是 TA-Lib(Technical Analysis Library)的 Windows 平台 ARM64 架构的二进制分发包,适用于 Python 3.12。以下是对该文件名各部分的解析:
ta_lib
:- 这是包的名称,表示 Technical Analysis Library,一个用于技术分析的库,提供了各种金融指标的计算方法。
0.6.3
:- 这是包的版本号,表示这是 TA-Lib 的 0.6.3 版本。
cp312
:- 这表示该包是为 Python 3.12 编译的。
cp
是 CPython 的缩写,后面跟着的数字表示 Python 的版本。这里只支持python3.12版本
- 这表示该包是为 Python 3.12 编译的。
win_arm64
:- 这表示该包是为 Windows 操作系统和 ARM64 架构编译的。ARM64 是一种基于 ARM 架构的 64 位处理器架构,常用于移动设备和一些 Windows 设备(如 Surface Pro X)。
.whl
:- 这是文件扩展名,表示这是一个 Wheel 文件。Wheel 是 Python 的一种分发格式,用于简化 Python 包的安装过程。
【示例4】
mediapipe-0.10.15-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
是一个 Python 包的安装文件,具体来说是 MediaPipe 的一个二进制分发包。以下是对该文件名各部分的解析:
mediapipe
:- 这是包的名称,表示 MediaPipe,这是一个由 Google 开发的开源机器学习框架,专注于构建多模态(例如视频、音频、任意时间序列数据)应用。
0.10.15
:- 这是包的版本号,表示这是 MediaPipe 的 0.10.15 版本。
cp311
:- 这表示该包是为 Python 3.11 编译的。
cp
是 CPython 的缩写,后面跟着的数字表示 Python 的版本。
- 这表示该包是为 Python 3.11 编译的。
manylinux_2_17_x86_64.manylinux2014_x86_64
:manylinux_2_17_x86_64
和manylinux2014_x86_64
是兼容性标签,表示该包可以在多个 Linux 发行版上运行,这些发行版符合manylinux2014
或更新的manylinux
标准(manylinux_2_17
是manylinux2014
的一个更新或兼容版本,具体取决于实现和上下文)。x86_64
表示该包是为 64 位 x86 架构编译的。
.whl
:- 这是文件扩展名,表示这是一个 Wheel 文件。Wheel 是 Python 的一种分发格式,用于简化 Python 包的安装过程。
【示例5】
mediapipe-0.10.18-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
是一个 Python 包的安装文件,具体来说是 MediaPipe 的一个二进制分发包。以下是对该文件名各部分的解析:
mediapipe
:- 这是包的名称,表示 MediaPipe,这是一个由 Google 开发的开源机器学习框架,专注于构建多模态(例如视频、音频、任意时间序列数据)应用。
0.10.18
:- 这是包的版本号,表示这是 MediaPipe 的 0.10.18 版本。
cp310
:- 这表示该包是为 Python 3.10 编译的。
cp
是 CPython 的缩写,后面跟着的数字表示 Python 的版本。
- 这表示该包是为 Python 3.10 编译的。
manylinux_2_17_aarch64.manylinux2014_aarch64
:manylinux_2_17_aarch64
和manylinux2014_aarch64
是兼容性标签,表示该包可以在多个符合manylinux2014
或更新的manylinux
标准的 Linux 发行版上运行,并且是专门为aarch64
架构(即 ARM 64 位架构)编译的。manylinux
是一个项目,旨在通过提供一个通用的 Linux 环境,使 Python 包能够在多种 Linux 发行版上运行。aarch64
指的是 ARM 架构的 64 位版本,常用于移动设备、嵌入式系统以及一些服务器环境。
.whl
:- 这是文件扩展名,表示这是一个 Wheel 文件。Wheel 是 Python 的一种分发格式,用于简化 Python 包的安装过程。
【示例6】
qaboard-0.8.6-py3-none-any.whl
是一个 Python 包的安装文件,具体来说是一个名为 qaboard
的包的二进制分发包。以下是对该文件名各部分的解析:
qaboard
:- 这是包的名称,表示该文件是
qaboard
包的安装文件。qaboard
可能是一个用于某种特定功能的 Python 库,具体功能需要查看该包的文档或源代码来了解。
- 这是包的名称,表示该文件是
0.8.6
:- 这是包的版本号,表示这是
qaboard
包的 0.8.6 版本。版本号通常用于跟踪包的更新和变更。
- 这是包的版本号,表示这是
py3
:- 这表示该包是为 Python 3 编译的。虽然它没有指定具体的 Python 3.x 版本(如 3.6、3.7 等),但通常意味着它应该与大多数 Python 3.x 版本兼容。
py3
是一个通用的标签,用于指示兼容 Python 3。
- 这表示该包是为 Python 3 编译的。虽然它没有指定具体的 Python 3.x 版本(如 3.6、3.7 等),但通常意味着它应该与大多数 Python 3.x 版本兼容。
none
:- 在这个上下文中,
none
通常与平台或 ABI(Application Binary Interface)相关。在这里,它表示该包不特定于任何特定的平台或 ABI。这意味着该包是一个纯 Python 包,不包含任何特定于操作系统的二进制代码。即可可以适合所有操作系统
- 在这个上下文中,
any
:- 这进一步强调了该包的平台无关性。
any
表示该包可以在任何支持 Python 的平台上运行,只要该平台上的 Python 版本与包兼容。
- 这进一步强调了该包的平台无关性。
.whl
:- 这是文件扩展名,表示这是一个 Wheel 文件。Wheel 是 Python 的一种分发格式,用于简化 Python 包的安装过程。与传统的源码分发(如
.tar.gz
文件)相比,Wheel 文件包含了预编译的二进制代码(如果适用),从而加快了安装速度。
- 这是文件扩展名,表示这是一个 Wheel 文件。Wheel 是 Python 的一种分发格式,用于简化 Python 包的安装过程。与传统的源码分发(如
【示例7】
scipy-1.0.1-cp35-cp35m-linux_armv7l.whl
是一个 Python 包的安装文件,具体来说是 SciPy
库的一个二进制分发包。以下是对该文件名各部分的解析:
scipy
:- 这是包的名称,表示该文件是
SciPy
库的安装文件。SciPy
是一个用于科学计算和技术的开源软件库,提供了许多数学、科学和工程计算的功能。
- 这是包的名称,表示该文件是
1.0.1
:- 这是包的版本号,表示这是
SciPy
的 1.0.1 版本。版本号通常用于跟踪包的更新和变更。
- 这是包的版本号,表示这是
cp35
:- 这表示该包是为 Python 3.5 编译的。
cp
是 CPython 的缩写,后面跟着的数字表示 Python 的版本。
- 这表示该包是为 Python 3.5 编译的。
cp35m
:cp35m
是对cp35
的进一步细化,m
通常表示该包是为支持pymalloc
(Python 的内存分配器)的 Python 3.5 版本编译的。不过,在大多数情况下,cp35
和cp35m
可以互换使用,因为大多数现代 Python 构建都支持pymalloc
。
linux_armv7l
:- 这表示该包是为在基于 ARM 架构的 32 位 Linux 系统上运行而编译的。具体来说,
armv7l
指的是 ARMv7 架构的 Linux 系统,通常用于嵌入式设备、树莓派(Raspberry Pi)等。
- 这表示该包是为在基于 ARM 架构的 32 位 Linux 系统上运行而编译的。具体来说,
.whl
:- 这是文件扩展名,表示这是一个 Wheel 文件。Wheel 是 Python 的一种分发格式,用于简化 Python 包的安装过程。与传统的源码分发(如
.tar.gz
文件)相比,Wheel 文件包含了预编译的二进制代码,从而加快了安装速度。
- 这是文件扩展名,表示这是一个 Wheel 文件。Wheel 是 Python 的一种分发格式,用于简化 Python 包的安装过程。与传统的源码分发(如
【示例8】
mediapipe-0.10.21-cp311-cp311-macosx_11_0_x86_64.whl
是一个 Python 包的安装文件,具体来说是 MediaPipe 的一个二进制分发包。以下是对该文件名各部分的详细解析:
mediapipe
:- 这是包的名称,表示该文件是 MediaPipe 包的安装文件。MediaPipe 是一个由 Google 开发的开源机器学习框架,专注于构建多模态(例如视频、音频、任意时间序列数据)应用。
0.10.21
:- 这是包的版本号,表示这是 MediaPipe 的 0.10.21 版本。版本号通常用于跟踪包的更新和变更。
cp311
:- 这表示该包是为 Python 3.11 编译的。
cp
是 CPython 的缩写,后面跟着的数字表示 Python 的版本。
- 这表示该包是为 Python 3.11 编译的。
macosx_11_0_x86_64
:macosx_11_0
:表示该包是为 macOS 11.0(Big Sur)或更高版本的 macOS 系统编译的。x86_64
:表示该包是为基于 x86_64 架构(即 64 位 Intel 或 AMD 处理器)的 macOS 系统编译的。
.whl
:- 这是文件扩展名,表示这是一个 Wheel 文件。Wheel 是 Python 的一种分发格式,用于简化 Python 包的安装过程。与传统的源码分发(如
.tar.gz
文件)相比,Wheel 文件包含了预编译的二进制代码,从而加快了安装速度。
- 这是文件扩展名,表示这是一个 Wheel 文件。Wheel 是 Python 的一种分发格式,用于简化 Python 包的安装过程。与传统的源码分发(如
【示例9】
mediapipe-0.10.21-cp311-cp311-macosx_11_0_universal2.whl
是一个 Python 包的安装文件,具体来说是 MediaPipe 的一个二进制分发包。以下是对该文件名各部分的详细解析:
mediapipe
:- 这是包的名称,表示该文件是 MediaPipe 包的安装文件。MediaPipe 是一个由 Google 开发的开源机器学习框架,专注于构建多模态(例如视频、音频、任意时间序列数据)应用。
0.10.21
:- 这是包的版本号,表示这是 MediaPipe 的 0.10.21 版本。版本号通常用于跟踪包的更新和变更。
cp311
:- 这表示该包是为 Python 3.11 编译的。
cp
是 CPython 的缩写,后面跟着的数字表示 Python 的版本。
- 这表示该包是为 Python 3.11 编译的。
macosx_11_0_universal2
:macosx_11_0
:表示该包是为 macOS 11.0(Big Sur)或更高版本的 macOS 系统编译的。universal2
:表示该包是一个“通用二进制”文件,支持多种处理器架构。在 macOS 上,universal2
通常意味着该包同时支持 Intel(x86_64)和 Apple Silicon(ARM64,如 M1、M2 芯片)架构。
.whl
:- 这是文件扩展名,表示这是一个 Wheel 文件。Wheel 是 Python 的一种分发格式,用于简化 Python 包的安装过程。与传统的源码分发(如
.tar.gz
文件)相比,Wheel 文件包含了预编译的二进制代码,从而加快了安装速度。
- 这是文件扩展名,表示这是一个 Wheel 文件。Wheel 是 Python 的一种分发格式,用于简化 Python 包的安装过程。与传统的源码分发(如
【示例10】
Pmw-2.0.1-py2-none-any.whl
是一个 Python 包的安装文件,具体来说是 Pmw(Python MegaWidgets)库的一个二进制分发包。以下是对该文件名各部分的详细解析:
Pmw
:- 这是包的名称,表示该文件是 Pmw 包的安装文件。Pmw 是一个用于创建复杂图形用户界面(GUI)组件的 Python 库,它扩展了 Tkinter 的功能。
2.0.1
:- 这是包的版本号,表示这是 Pmw 的 2.0.1 版本。版本号通常用于跟踪包的更新和变更。
py2
:- 这表示该包是为 Python 2 编译的。
py2
指的是 Python 2.x 系列。需要注意的是,Python 2 已经于 2020 年 1 月 1 日正式停止支持,因此建议尽可能迁移到 Python 3。
- 这表示该包是为 Python 2 编译的。
none
:- 在这个上下文中,
none
通常表示该包不依赖于特定的 Python 实现或变体(例如,不特定于 CPython、PyPy 等)。然而,由于这是与 Python 版本相关的字段,并且py2
已经指定了 Python 版本,因此none
在这里可能更多地是一个占位符或表示该字段在此版本中不适用特定变体。
- 在这个上下文中,
any
:- 这表示该包可以在任何支持的操作系统上运行。
any
通常用于表示包的二进制分发不依赖于特定的操作系统或架构。
- 这表示该包可以在任何支持的操作系统上运行。
.whl
:- 这是文件扩展名,表示这是一个 Wheel 文件。Wheel 是 Python 的一种分发格式,用于简化 Python 包的安装过程。与传统的源码分发(如
.tar.gz
文件)相比,Wheel 文件包含了预编译的二进制代码,从而加快了安装速度。
- 这是文件扩展名,表示这是一个 Wheel 文件。Wheel 是 Python 的一种分发格式,用于简化 Python 包的安装过程。与传统的源码分发(如