常见问题(FAQ)
错误信息:
# yum search package File "/usr/bin/yum", line 30 except KeyboardInterrupt, e: ^ SyntaxError: invalid syntax
如果我们在系统上设置了默认的python是Python3,则需要将yum的Shebang更改为Python2,因为yum只能在Python2下工作:
# vi /usr/bin/yum 将 #!/usr/bin/python 更改为 #!/usr/bin/python2.7
通用:
Downloading packages: File "/usr/libexec/urlgrabber-ext-down", line 28 except OSError, e: ^ SyntaxError: invalid syntax Exiting on user cancel
该问题也是 Python 3被设置为默认全局版本。
要修复此错误,编辑/usr/libexec/urlgrabber-ext-down
脚本:
# vi /usr/libexec/urlgrabber-ext-down 将 #!/usr/bin/python 改成 #!/usr/bin/python2.7
列出Fedora系统上可用的所有Python版本:
# ls /usr/bin/python* /usr/bin/python /usr/bin/python2.7 /usr/bin/python3 /usr/bin/python3.4m /usr/bin/python-coverage /usr/bin/python2 /usr/bin/python2-coverage /usr/bin/python3.4 /usr/bin/python3-mako-render
现在,检查默认Python版本:
# python -V Python 2.7.8
如果只想针对某个用户修改Python版本,只需在主目录下创建(修改)一个新的别名“.bashrc”
$alias python='/usr/bin/python3.4' $. ~/.bashrc $python --version Python 3.4.2
要全局更改python版本,请首先检查“alternations”命令是否已注册python替代版本:
# alternatives --list | grep -i python
没有输出意味着尚未配置替代python版本。使用'alternative'命令注册上面列出的两个python版本。
# alternatives --install /usr/bin/python python /usr/bin/python3.4 2 # alternatives --install /usr/bin/python python /usr/bin/python2.7 1
上面命令中,我们指定了“Python3.4”有更高的优先级“2”,所以现在默认的Python的版本是3.4。
# python -V Python 3.4.1
在Python版本之间进行切换:
# alternatives --config python There are 2 programs which provide 'python'. Selection Command ---------------------------------------------- *+ 1 /usr/bin/python3.4 2 /usr/bin/python2.7 Enter to keep the current selection[+], or type selection number: 2 [root@localhost fedora]# python -V Python 2.7.8
日期:2020-07-07 20:55:09 来源:oir作者:oir