我正在从Python 2迁移到Python 3。
我使用python3 -m venv py3
创建了一个虚拟环境,并尝试执行pip install -r requirements.txt
,但是输出了以下错误信息:
Collecting mock==1.0.1 (from -r requirements.txt (line 8))
Using cached mock-1.0.1.tar.gz
setuptools must be installed to install from a source distribution
我查看了我的虚拟环境,发现它已经安装了setuptools:
(py3) 1111:d3 1111$ ls py3/lib/python3.4/site-packages/
__pycache__ easy_install.py pip-6.0.8.dist-info setuptools
_markerlib pip pkg_resources setuptools-12.0.5.dist-info
但是当我仍然试图重新安装setuptools时,会显示以下内容:
(py3) 1111:d3 1111$ pip install setuptools
Requirement already satisfied (use --upgrade to upgrade): setuptools in
/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python
我有两个问题:
- 为什么虚拟环境文件夹中看不到setuptools的存在?
- 为什么它查找 Python 2 文件夹而不是 Python 3?
py3
虚拟环境中,你能验证正在使用正确的pip
吗?例如,尝试which pip
并告诉我们结果。同样地,尝试对pip3
执行相同操作,看看是否可以将其用作你的virtualenv
中的pip
。 - user707650(py3) 1111:d3 1111$ which pip
/Users/1111/_realpython/d3/py3/bin/pip
。对于which pip3
,同样如此:/Users/1111/_realpython/d3/py3/bin/pip3
。 - kurtgnpip3 install setuptools
,它仍然会显示我已经在我的2.7文件夹中拥有它。 - kurtgn