首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将Python包标记为Python 2?

如何将Python包标记为Python 2?
EN

Stack Overflow用户
提问于 2014-10-09 12:22:49
回答 2查看 278关注 0票数 6

我有一个只在Python2上运行的Python package。它的setup.py中有以下分类器:

代码语言:javascript
复制
setup(
    # ...
    classifiers=[
        'Programming Language :: Python',
        'Programming Language :: Python :: 2',
        'Programming Language :: Python :: 2 :: Only',
    ])

但是,如果我用Python3创建一个virtualenv,pip会很高兴地安装这个包。

如何防止安装软件包?我的setup.py应该基于sys.version_info抛出一个错误吗?我能停止下载软件包吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-10-13 08:54:24

在setup.py中,添加以下内容:

代码语言:javascript
复制
import sys
if sys.version_info[0] != 2:
    sys.stderr.write("This package only supports Python 2.\n")
    sys.exit(1)
票数 9
EN

Stack Overflow用户

发布于 2022-07-13 08:34:29

在较新版本的setuptoolspip中,如果您使用的是setup.py,下面是如何仅指定Python2的要求(特别是Python2.7):

代码语言:javascript
复制
from setuptools import setup

setup(
    name="my_package_name",
    python_requires='>=2.7,<3.0',
    # ...
)

还最好包括分类器,如下所示:

代码语言:javascript
复制
setup(
    name="my_package_name",
    python_requires='>=2.7,<3.0',
    classifiers=[
        "Programming Language :: Python :: 2.7",
        "Programming Language :: Python :: 2 :: Only",
    ],
)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26278348

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档