安装Python包时,如何判断支持哪个版本的.whl文件

安装Python包时,如何判断支持哪个版本的.whl文件,python,sql-server,installation,pymssql,python-wheel,Python,Sql Server,Installation,Pymssql,Python Wheel,最近,我尝试用python连接我的SQL Server。所以我只是从“”下载.whl文件。 在cmd windows中,我使用以下命令: pip install some-package.whl 我的电脑是Windows 64位,我尝试了以下所有的.whl文件。 但安装失败,并显示错误消息。此系统不支持.whl文件。我该怎么办。有人能帮我吗。whl命名结构: {distribution}-{version}({build tag})?-{python tag}-{abi tag}-{plat

最近,我尝试用python连接我的SQL Server。所以我只是从“”下载.whl文件。 在cmd windows中,我使用以下命令:

pip install some-package.whl
我的电脑是Windows 64位,我尝试了以下所有的.whl文件。

但安装失败,并显示错误消息。此系统不支持.whl文件。我该怎么办。有人能帮我吗。

whl命名结构:

{distribution}-{version}({build tag})?-{python tag}-{abi tag}-{platform tag}.whl


在您的例子中,您需要了解您的
python--version
(python2.7等的python标记cp27)和您的cpu架构。

我也面临同样的问题。如果是32位Python版本或64位Python,则它与系统上安装的Python版本一致

因此,根据我的系统,cp36是python 3.6,win32是python的32位

我为我工作

我希望这能有所帮助。

面对同样的问题, 您只需更改whl文件的名称:

更改为安装的python发行版 python版本没有,平台也没有

应该是
pymssql-2.1.3-cp3-none-eny.whl

您可以使用

您可以使用这个简单的函数
compatible_wheels
我使用打包编写的,用于过滤系统中的兼容控制盘:

from packaging.tags import sys_tags


def parse_tag(wheel_filename):
    """
    Example:
        >>> parse_tag('pymssql-2.2.1-cp36-cp36m-manylinux2010_i686.whl')
        'cp36-cp36m-manylinux2010_i686'
    """
    return '-'.join(wheel_filename.split('-')[2:])[:-4]


def compatible_wheels(wheel_filenames):
    tags = [str(tag) for tag in sys_tags()]
    return [
        f
        for f in wheel_filenames
        if parse_tag(f) in tags
    ]
示例用法
什么是您的python版本
import sys;sys.version
可能会愚弄
pip
安装控制盘文件,但它不能保证安装的软件包实际工作。提供不同的wheel文件正是因为它们是针对不同版本的CPython编译的。
pip install packaging
from packaging.tags import sys_tags


def parse_tag(wheel_filename):
    """
    Example:
        >>> parse_tag('pymssql-2.2.1-cp36-cp36m-manylinux2010_i686.whl')
        'cp36-cp36m-manylinux2010_i686'
    """
    return '-'.join(wheel_filename.split('-')[2:])[:-4]


def compatible_wheels(wheel_filenames):
    tags = [str(tag) for tag in sys_tags()]
    return [
        f
        for f in wheel_filenames
        if parse_tag(f) in tags
    ]
>>> wheel_filenames = [
    'pymssql-2.2.1-cp36-cp36m-manylinux2010_i686.whl',
    'pymssql-2.2.1-cp36-cp36m-manylinux2014_i686.whl',
    'pymssql-2.2.1-cp37-cp37m-manylinux1_i686.whl',
    'pymssql-2.2.1-cp39-cp39-manylinux2014_i686.whl',
    'pymssql-2.2.1-cp37-cp37m-win32.whl',
    'pymssql-2.2.1-cp36-cp36m-manylinux_2_24_x86_64.whl',
    'pymssql-2.2.1-cp37-cp37m-manylinux2010_x86_64.whl',
    'pymssql-2.2.1-cp37-cp37m-manylinux2014_i686.whl',
    'pymssql-2.2.1-cp38-cp38-manylinux2014_i686.whl',
    'pymssql-2.2.1-cp36-cp36m-manylinux_2_24_i686.whl',
    'pymssql-2.2.1-cp38-cp38-macosx_10_14_x86_64.whl',
    'pymssql-2.2.1-cp38-cp38-manylinux2014_x86_64.whl',
    'pymssql-2.2.1-cp38-cp38-win_amd64.whl',
    'pymssql-2.2.1-cp39-cp39-win32.whl',
    'pymssql-2.2.1-cp39-cp39-manylinux_2_24_x86_64.whl',
    'pymssql-2.2.1-cp39-cp39-win_amd64.whl',
    'pymssql-2.2.1-cp39-cp39-manylinux2014_x86_64.whl',
    'pymssql-2.2.1-cp38-cp38-manylinux2010_x86_64.whl',
    'pymssql-2.2.1-cp38-cp38-manylinux_2_24_x86_64.whl',
    'pymssql-2.2.1-cp38-cp38-win32.whl',
    'pymssql-2.2.1-cp39-cp39-manylinux2010_i686.whl',
    'pymssql-2.2.1-cp39-cp39-manylinux_2_24_i686.whl',
    'pymssql-2.2.1-cp37-cp37m-macosx_10_14_x86_64.whl',
    'pymssql-2.2.1-cp37-cp37m-manylinux2010_i686.whl',
    'pymssql-2.2.1-cp38-cp38-manylinux1_i686.whl',
    'pymssql-2.2.1-cp38-cp38-manylinux_2_24_i686.whl',
    'pymssql-2.2.1-cp37-cp37m-manylinux2014_x86_64.whl',
    'pymssql-2.2.1-cp36-cp36m-manylinux2010_x86_64.whl',
    'pymssql-2.2.1-cp39-cp39-manylinux1_x86_64.whl',
    'pymssql-2.2.1-cp36-cp36m-manylinux1_x86_64.whl',
    'pymssql-2.2.1-cp37-cp37m-manylinux1_x86_64.whl',
    'pymssql-2.2.1-cp39-cp39-manylinux1_i686.whl',
    'pymssql-2.2.1-cp36-cp36m-manylinux1_i686.whl',
    'pymssql-2.2.1-cp36-cp36m-manylinux2014_x86_64.whl',
    'pymssql-2.2.1-cp37-cp37m-manylinux_2_24_i686.whl',
    'pymssql-2.2.1-cp37-cp37m-manylinux_2_24_x86_64.whl',
    'pymssql-2.2.1-cp37-cp37m-win_amd64.whl',
    'pymssql-2.2.1-cp38-cp38-manylinux2010_i686.whl',
    'pymssql-2.2.1-cp38-cp38-manylinux1_x86_64.whl',
    'pymssql-2.2.1-cp39-cp39-macosx_10_14_x86_64.whl',
    'pymssql-2.2.1-cp39-cp39-manylinux2010_x86_64.whl',
]

>>> compatible_wheels(wheel_filenames)
['pymssql-2.2.1-cp39-cp39-manylinux_2_24_x86_64.whl', 'pymssql-2.2.1-cp39-cp39-manylinux2014_x86_64.whl', 'pymssql-2.2.1-cp39-cp39-manylinux1_x86_64.whl', 'pymssql-2.2.1-cp39-cp39-manylinux2010_x86_64.whl']

# Note: I get the above output because I am using Linux. You may be getting the wheels for windows accordingly based on your system.