【问题标题】:Distribute/distutils specify Python version分发/distutils 指定 Python 版本
【发布时间】:2012-11-03 08:00:27
【问题描述】:

this...的类似跟进:)

我的项目仅限 Python 3,我的问题基本上是我如何告诉 distutils/distribute/whoever 这个包仅限 Python 3?

【问题讨论】:

  • 你是想让pip 2.x 看不到你的应用程序,还是拒绝安装它,或者只是运行python2.7 setup.py install 会出错?对于后者,bereal的解决方案是完美的。
  • 我不在乎,只要它没有以某种方式安装即可;)
  • 那么我会接受 bereal 的回答。如果您稍后将包放在 PyPI 上并决定要以不同方式处理 pip 2,您可以稍后随时询问该信息;如果您不打算使用它,现在无需学习所有内容。
  • 其实我打算在PyPI上发布...
  • 哦,你还想使用Programming Language :: Python :: 3而不是默认的Programming Language :: Python分类器。无论如何,所有这一切实际上只是为了防止easy_installpipdistribute2 项目中的任何未来工具在出错之前必须下载你的包。

标签: python distribution setuptools distribute


【解决方案1】:

不确定是否有一些特殊设置,但这在 setup.py 的开头可能会有所帮助:

import sys
if sys.version_info.major < 3:
    print("I'm only for 3, please upgrade")
    sys.exit(1)

【讨论】:

  • +1。检查版本的惯用方法是sys.version_info &lt; (3,)(我相信这主要是为了在您想放弃对 3.0 的支持时更容易更改为(3, 1)),但我不认为这真的令人困惑或可读性降低。
  • FWIW 我认为将其写为.major &lt; 3 更习惯用法,因为这会立即赋予数字含义。在这种情况下这并不重要,因为无论如何它都很明显;)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-08-17
  • 2011-09-02
  • 2022-10-31
  • 2021-09-01
  • 2019-07-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多