在Ubuntu 18.04 LTS上,我具有标准的Python 2.7和Python 3.6。我的默认python
指向Python2。然后我安装了virtualenv
:
$ sudo pip install virtualenv virtualenvwrapper
$ sudo rm -rf ~/get-pip.py ~/.cache/pip
并通过添加以下几行来修改我的.bashrc
:
export WORKON_HOME=~/Envs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source /usr/local/bin/virtualenvwrapper.sh
一切都很好,我可以制作虚拟环境,安装软件包,在其中工作,停用它们等。
有一天,我决定将我的Python 3升级到Python 3.7,因为我需要使用asyncio。我遵循了这个guide。
我将新的Python 3设置为默认设置,在尝试打开新终端之前,一切似乎都还不错。我收到关于未安装virtualenv
的消息,然后出现命令提示符。但这已经死了-我无法输入任何内容。我退出终端,现在我得到的只是菜单栏中的“终端”一词,带有一个小旋转圈,然后消失了。
我注释了.bashrc
中关于virtualenv
的几行,但并不高兴。
编辑: 我使用xterm做到了
cd /usr/bin
sudo rm python3
sudo ln -s python3.6 python3
并重新启动。
现在我把终端取回来了。 python3指向python 3.6.7。但是我担心将符号链接切换到3.7。
更新:
即使在.bashrc中禁用virtualenv,重新启动并尝试切换回python3.7,也可以重现此问题。我可以直接从命令行调用python3.7,并看到python3.7.1提示>>>,但是系统似乎不喜欢它作为默认的python3。