我需要使用 pip install SomePackage.tar.gz 安装一个 python 包。在此包的 setup.py 中,install_requires 下列出的一些库已成为 Python 2.7 标准库的一部分(如 argparse) .
问题是,当我在 Python 2.7 上安装包时,pip 没有意识到,例如,argparse 已经包含在标准库中,并在 site-packages 下重新安装它。
有没有办法让 pip 下载和安装包仅在标准库中不包含的情况下列在 install_requires 下?
请注意,更改 setup.py 不是一个选项,因为该包也可能安装在 Python 2.6 下。
请您参考如下方法:
您说更改 setup.py 不是一个选项,因为它可能在 Python 2.6 下使用。无论如何改变它,有条件的:
import sys
from setuptools import setup
install_requires = [
# ...general modules...
]
if sys.hexversion < 0x02070000:
install_requires.append('argparse')
setup(
# ...
install_requires=install_requires,
)
