我需要使用 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,
)
关于python - 为什么 pip 重新安装 install_requires 中列出的标准包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22872688/