我安装了较新版本的python(3.2.3)而不是Fedora16中可用的版本(python2.7)
现在yum停止工作了.它显示以下错误.
[root@localhost yum-3.4.3]# yum
File "/usr/bin/yum", line 30
except KeyboardInterrupt, e:
^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
请告知如何解决错误.这将是有帮助的,因为我无法更新或安装任何包.
我有一台安装了 python-2.7.5 作为默认 python 的 centos7 机器。对于我的工作,我需要在同一台机器上安装 3.x 版本的 python,所以我安装了 python-3.6.8 并创建了一个软链接,/usr/bin/python指向/usr/bin/python3以下命令:
sudo ln -fs /usr/bin/python3 /usr/bin/python
现在,对于示例 python 脚本,假设:test.py,ModuleNotFoundError: No module named 'yaml'当我尝试使用import yaml它时出现错误。
test.py 脚本如下:
#!/usr/bin/python3
"""
Sample python script to import yaml.
"""
import yaml
print("Hello! Could you please help me resolve this?")
Run Code Online (Sandbox Code Playgroud)
错误如下:
[cloud-user@xx.xx.xx.xx]$python test.py
Traceback (most recent call last):
File "test.py", line 6, in <module>
import yaml
ModuleNotFoundError: No module named 'yaml'
Run Code Online (Sandbox Code Playgroud)
我看到在 stackoverflow 和 github 上提出了几个查询,例如 …
我想将 python3 设为我在 rhel 上的默认设置,所以我遵循了如何在 CentOS 上将 Python3.5.2 设置为默认 Python 版本?
sudo ln -fs /usr/bin/python3 /usr/bin/python
Run Code Online (Sandbox Code Playgroud)
它将默认值更改为 3.6.8
root@rhel:~# python -V
Python 3.6.8
Run Code Online (Sandbox Code Playgroud)
然后我尝试 yum install python-pip:
root@rhel:~# yum install python-pip
File "/usr/bin/yum", line 30
except KeyboardInterrupt, e:
^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
当我尝试其他一些命令时发生了这种情况。我尝试通过以下方式恢复更改
root@rhel:~# sudo ln -fs /usr/bin/python /usr/bin/python
Run Code Online (Sandbox Code Playgroud)
但是我遇到了
root@rhel:~# python -V
bash: /usr/bin/python: Too many levels of symbolic links
Run Code Online (Sandbox Code Playgroud)
我猜从我在需要打破符号链接的地方阅读的内容来看。以下是我的 /usr/bin/ 中的内容
ls -l /usr/bin | 蟒蛇
lrwxrwxrwx 1 root root 15 Oct 21 14:12 python -> …Run Code Online (Sandbox Code Playgroud)