neolee / pilot

进入编程世界的第一课
588 stars 842 forks source link

Jupyter 安装问题:Python 重复安装 #1400

Open zhaodikang opened 4 years ago

zhaodikang commented 4 years ago

我刚搞明白命令行代理的事情,重装了homebrew,此前安装镜像,jupyter都好用,但即使按照课程设置也无法用code .打开VScode。就再一次从开始的课程鼓捣环境,看了大家的问题,可能是和之前装的重复导致,python在homebrew下应该是3.7.4,但我的一直是3.7.3版本,反复安装会更加混乱,请老师帮忙看看问题出在哪里 image `zhaodikang@zhaodikangdeMacBook-Pro ~ % pip3 list Package Version


appnope 0.1.0
argon2-cffi 20.1.0
astroid 2.4.1
async-generator 1.10
attrs 20.2.0
backcall 0.2.0
bleach 3.1.5
certifi 2020.6.20 cffi 1.14.3
chardet 3.0.4
decorator 4.4.2
defusedxml 0.6.0
entrypoints 0.3
idna 2.10
importlib-metadata 1.7.0
ipykernel 5.3.4
ipython 7.18.1
ipython-genutils 0.2.0
isort 4.3.21
jedi 0.17.2
Jinja2 2.11.2
json5 0.9.5
jsonschema 3.2.0
jupyter-client 6.1.7
jupyter-core 4.6.3
jupyterlab 2.2.8
jupyterlab-pygments 0.1.1
jupyterlab-server 1.2.0
lazy-object-proxy 1.4.3
MarkupSafe 1.1.1
mccabe 0.6.1
mistune 0.8.4
nbclient 0.5.0
nbconvert 6.0.2
nbformat 5.0.7
nest-asyncio 1.4.0
notebook 6.1.4
packaging 20.4
pandocfilters 1.4.2
parso 0.7.1
pexpect 4.8.0
pickleshare 0.7.5
pip 19.0.3
prometheus-client 0.8.0
prompt-toolkit 3.0.7
ptyprocess 0.6.0
pycparser 2.20
Pygments 2.7.0
pylint 2.5.2
pyparsing 2.4.7
pyrsistent 0.17.3
python-dateutil 2.8.1
pyzmq 19.0.2
requests 2.24.0
Send2Trash 1.5.0
setuptools 40.8.0
six 1.12.0
terminado 0.8.3
testpath 0.4.4
toml 0.10.1
tornado 6.0.4
traitlets 5.0.4
typed-ast 1.4.1
urllib3 1.25.10
wcwidth 0.2.5
webencodings 0.5.1
wheel 0.33.1
wrapt 1.12.1
zipp 3.1.0
You are using pip version 19.0.3, however version 20.2.3 is available. You should consider upgrading via the 'pip install --upgrade pip' command.`

@neolee

neolee commented 4 years ago

所以你的问题是什么?先仔细思考和整理一下你的语言,把问题说清楚。

zhaodikang commented 4 years ago

老师,捋完思路了

解决python3重复的问题

@neolee

neolee commented 4 years ago

首先,你用 Homebrew 安装的是 Python 3.7 分支最新的 3.7.9,这个没问题。

然后你的 python3 -V 输出 3.7.3,说明你的系统里 python3 这个命令指向了另一个 Python,具体是哪一个可以用 which python3 这个命令来了解。

一般来说,初学者不应该在系统中装多个 Python 系统,否则很容易混乱。我们的 wiki 里有常规的诊断指南,运行下面这些命令看看(一个个执行):

echo $PATH

which python
which python3
python -V
python3 -V

which pip
which pip3
pip -V
pip3 -V
zhaodikang commented 4 years ago

image

neolee commented 4 years ago

你的 Homebrew 没有把安装的 Python 配置到 /usr/local/bin 下面,试试下面的命令:

brew link python@3.7
zhaodikang commented 4 years ago

谢谢老师,另外我需要卸载已经安装的且不在homebrew下的python3吗? image

zhaodikang@zhaodikangdeMacBook-Pro ~ % brew link python@3.7
Warning: python@3.7 is keg-only and must be linked with --force

If you need to have this software first in your PATH instead consider running:
  echo 'export PATH="/usr/local/opt/python@3.7/bin:$PATH"' >> ~/.zshrc
zhaodikang@zhaodikangdeMacBook-Pro ~ % brew link python@3.7 --force
Linking /usr/local/Cellar/python@3.7/3.7.9... 28 symlinks created

If you need to have this software first in your PATH instead consider running:
  echo 'export PATH="/usr/local/opt/python@3.7/bin:$PATH"' >> ~/.zshrc

zhaodikang@zhaodikangdeMacBook-Pro ~ % echo $PATH                  
/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin

zhaodikang@zhaodikangdeMacBook-Pro ~ % which python                
/usr/bin/python
zhaodikang@zhaodikangdeMacBook-Pro ~ % which python3               
/usr/bin/python3
zhaodikang@zhaodikangdeMacBook-Pro ~ % python -V          
Python 2.7.16
zhaodikang@zhaodikangdeMacBook-Pro ~ % python3 -V
Python 3.7.3
zhaodikang@zhaodikangdeMacBook-Pro ~ % which pip
pip not found
zhaodikang@zhaodikangdeMacBook-Pro ~ % which pip3
/usr/bin/pip3
zhaodikang@zhaodikangdeMacBook-Pro ~ % pip -V
zsh: command not found: pip
zhaodikang@zhaodikangdeMacBook-Pro ~ % pip3 -V
pip 19.0.3 from /Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.7/lib/python3.7/site-packages/pip (python 3.7)

image @neolee

neolee commented 4 years ago

最好把那个 3.7.3 版本的 Python 删掉,但我不知道你怎么装的,也不知道怎么卸载,需要你自己探索了。

另外,你现在已经把 Homebrew 安装的 3.7.9 连接到 /usr/local/bin/python3 了,你试试:

/usr/local/bin/python3 -V

如果返回是 3.7.9 那这一部分就好了,下面是如何让你的命令行界面执行 python3 时正确使用 /usr/local/bin/python3 而不是 /usr/bin/python3,按照你的 $PATH 设置,应该是优先 /usr/local/bin/ 的,但不清楚为啥还是用了 /usr/bin/python3

由于你的系统里有多个 Python 存在,具体环境问题很难准确判断,了解原理之后自己多摸索下吧。

zhaodikang commented 4 years ago

谢谢老师,返回是Python 3.7.9,没错。

3.7.3 版本的 Python是新买电脑后跟着我们这个课程装的,但是,那时候由于网络问题,装的Homebrew镜像,也是费一番周折安装成功了,配合jupyter lab用来学习课程的第一阶段,都没有问题。 再后来就是重新安装Homebrew,原来的删除掉,但是有依存关系的python3.7.3,pip3啥的还在。

记忆是这样的,有可能我懵的没有认识到自己从其他地方下载过

neolee commented 4 years ago

3.7.3 版本的 Python 是新买电脑后跟着我们这个课程装的,但是,那时候由于网络问题,装的 Homebrew 镜像

不会的,Homebrew 不会在 /Library/Developer/CommandLineTools/Library/Frameworks/usr/bin 下面装东西。