Raf*_*iro 10 python linux terminal ubuntu zsh
我刚刚将 ubuntu 中的 python 升级到 python 3.10 以使用 match/case 语句,但现在我的终端无法打开。任何地方。我厌倦了在 Visual Studio Code 上打开它,但它说路径不存在。Gnome 终端和终结者甚至不会给出任何反馈。我使用带有 i3wm 的 Ubuntu 20.04,我的 shell 是 zsh,以下是我使用的命令(我从这个站点和这个站点修改了它们):
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt update
sudo apt install python3.10
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.10 1
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.6 10
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python2.6 10
sudo update-alternatives --config python
sudo update-alternatives --config python3
Run Code Online (Sandbox Code Playgroud)
我记得我之前的 python 版本是 3.7 左右。
如果您愿意,这里是上面的规格:
重要提示:请记住我无权访问终端。我还没有尝试过恢复模式,但如果您有非基于术语的解决方案,那么它是首选。
Raf*_*iro 10
刚刚找到了撤销的方法。如果你遇到同样的问题,我是这样做的:
Ctrl+Alt+Fn 和几个 F 按钮(F1、F2、F3...)直到进入 tty 菜单。我以自己的身份登录(不是 root),然后再次运行sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1
以创建默认的 python 2.8 sudo update-alternatives --config python3
。然后就正常工作了。
小智 5
我找到了安装您首选版本的更好方法python
。它比使用ppa:deadsnakes/ppa
存储库更稳定、更安全。
当然,现在这不再是您遇到的问题的直接答案。但我在这里编辑这个答案,希望对您和任何可能想要python3.10
在默认情况下未安装它的计算机上安装的人有所帮助。
您可以使用asdf,它是一个工具版本管理器。有了它,你可以安装任何你想要的 python 版本,与你的操作系统无关。它会更冗长,但工作得很好,与某些预安装的python
版本没有任何冲突。
为了避免安装asdf
和时出现问题python
,请安装以下软件包:
sudo apt install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev
Run Code Online (Sandbox Code Playgroud)
然后运行:
sudo apt update && sudo apt upgrade
Run Code Online (Sandbox Code Playgroud)
确保一切都是最新的。
要安装asdf
,首先我们从存储库和我们想要的版本的分支克隆asdf
(请注意,命令末尾指定的版本可能会更改。我只是按照文档进行操作):
git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.10.0
Run Code Online (Sandbox Code Playgroud)
现在您只需在脚本配置文件的末尾添加几行即可。它可能会根据您的 shell 发生变化,但请再次检查文档以获取具体说明(包括zsh
)。
要了解您使用的终端类型,您可以运行:
sudo apt install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev
Run Code Online (Sandbox Code Playgroud)
如果您正在使用bash
,那么您可以将以下内容添加到末尾~/.bashrc
(是的,包括点):
. $HOME/.asdf/asdf.sh
. $HOME/.asdf/completions/asdf.bash
Run Code Online (Sandbox Code Playgroud)
之后,您只需重新启动终端即可。
现在asdf
安装完毕,您应该安装一个插件来管理多个python
版本。为此,只需运行命令:
asdf plugin-add python
Run Code Online (Sandbox Code Playgroud)
要python3.10.4
在系统中全局安装,请运行:
asdf install python 3.10.4
Run Code Online (Sandbox Code Playgroud)
进而:
asdf global python 3.10.4
Run Code Online (Sandbox Code Playgroud)
最后,运行:
asdf reshim
Run Code Online (Sandbox Code Playgroud)
最后一个命令是为了asdf
在全局安装库后正常工作而进行的一些刷新。asdf
为了确定起见,每当您安装某些东西时都运行它。
不过,无需担心在使用 pip 安装某些包或模块后运行此命令(好吧,至少我从来没有)。
感谢Kenzie 学院。在那里学到的。
我遇到了完全相同的问题。我在这里找到了答案。
起初,我尝试简单地gnome-terminal
在没有终端的情况下打开文件并更改它,但它不起作用,因为使用 GUI 我没有 sudo 权限。因此,对我有用并且我希望对您也有用的解决方法是使用 VSCode 打开文件,然后使用 VSCode 集成终端运行以下命令:
sudo nano /usr/bin/gnome-terminal
Run Code Online (Sandbox Code Playgroud)
当然你不必使用nano
,你可以使用vim
或其他东西。无论如何,一旦到达那里,您就可以更改文件的第一行,这是一条注释,从
#!/usr/bin/python3
Run Code Online (Sandbox Code Playgroud)
到
#!/usr/bin/python3.8
Run Code Online (Sandbox Code Playgroud)
Ubuntu 20.04 与 很好兼容python3.8
,所以这就是为什么我建议你把它放在python3.8
那里,但你肯定可以测试其他版本是否有效。
这不是回去的办法python3.8
。您仍然会拥有python3.10
.
归档时间: |
|
查看次数: |
11601 次 |
最近记录: |