Open xuzhengfu opened 4 years ago
老师回复:
为啥发了俩一样的 issue……
系统环境可能各异,比如你的系统里就有一个 Python 2 的内置 Python 环境,这个环境里没有安装 pip(这在 Python 2 的时代不算奇怪);然后你用 Homebrew 装了 Python 3,这时
python3
和pip3
命令一定是指向你新装的 Python 3 的,而python
pip
命令则不确定,根据环境差别可能有差异。总之你现在开始用
python3
和pip3
这俩命令就好了,前者用于执行 Python 3 的解释器,后者用于安装 Python 第三方软件包。另外,
python3 -m pip install --upgrade pip
和pip3 install --upgrade pip
是一样的,只不过在 Windows 下后者会有问题,而在 macOS 下两个都可以。
我回复:
为啥发了俩一样的 issue……
尝试加 “question” label 的,结果还是没加上……
总之你现在开始用 python3 和 pip3 这俩命令就好了,前者用于执行 Python 3 的解释器,后者用于安装 Python 第三方软件包。
知道了,感谢老师!
感谢李骏老师!
0. 问题
Issues 中有个一样的问题 #307 ,最后的解决方案是执行以下命令:
问题在于:为什么我们要执行的命令和教程中的不一样,是环境配置的某个步骤做错了吗?
老师在 #307 中回复道:
可我用
python -V
的时候,发现 Python 版本是 2.7.10,为什么会这样?1. 基本信息
操作系统:macOS Mojave 10.14.6
执行命令
which pip
,命令行无反应。执行命令
which pip3
,结果如下:执行命令
which python
,结果如下:执行命令
which python3
,结果如下:执行命令
python -V
,结果如下:执行命令
python3 -V
,结果如下:2. 思考
Google “/usr/bin/python: No module named pip” ,在第一页未发现类似的情况。
Google “/usr/bin/python vs /usr/local/bin/python”,发现了这里描述了一些可供参考的内容,提取出有用的信息,如下:
pip
? You don't know, because it depends on the shebang line that was written to that script when it was auto-generated. And that can actually change over time, e.g. each time you install the module it's potentially rewritten.python
directly, you always know which one you're getting — it's whatever one you have your PATH setup to find first. And if you want to install modules to a different python, you just change the name of the interpreter that you're invoking, e.g./foo/python -m pip install quux
vs/bar/python -m pip install quux
.综览上述信息,得出了如下结论:
在执行命令
python -m pip install --upgrade pip
时,使用的是/usr/bin/python
的那个 python,而这个 python 里没有 pip。另,之前执行命令
brew install git python
时,命令行反馈过如下信息:Unversioned symlinks
python
,python-config
,pip
etc. pointing topython3
,python3-config
,pip3
etc., respectively, have been installed into /usr/local/opt/python/libexec/binIf you need Homebrew's Python 2.7 run brew install python@2
You can install Python packages with pip3 install
They will install into the site-package directory
/usr/local/lib/python3.7/site-packages