将 Python 3.3 设为默认 Python 3 解释器,而不是 3.2

将 Python 3.3 设为默认 Python 3 解释器,而不是 3.2

因此,为了简单起见,Ubuntu 12.10 已预装 python 3.2,并且它链接到“python3”。我下载了 python 3.3,它的命令是“python3.3”。但是,我从 synaptic 下载了适用于 python3 的 pySide。在 python3.3 上使用“from PySide.QtCore import *”会失败。但是,当我只运行“python3”(又名 3.2)时,一切正常。Synaptic 只安装了适用于 python3.2 的 lib,这是 ubuntu 中 python3 的默认库。我如何强制 synaptic 安装适用于 python3.3 的模块?

谢谢

答案1

您可以自定义python3别名。为此,您可以通过在文件末尾.bashrc附加“ ”来修改文件。此 shell 脚本可以为您完成此操作:alias python3='python3.3'

#!/bin/bash

cd ~

# Create the ~/.bashrc file if it does not exist
if [ ! -f ./.bashrc ]; then
    touch .bashrc
    chmod 755 .bashrc
    echo "#!/bin/bash" >> .bashrc
fi

# Append the customed alias
echo " " >> .bashrc
echo "alias python3='python3.3'" >> .bashrc
echo " " >> .bashrc

# Reload settings in the .bashrc script
source .bashrc

答案2

您可以通过设置适当的环境变量在同一系统上运行不同的 Python 版本。这将允许您在本地安装比 synaptic 包管理器可能提供的更高版本的 Python。例如在文件 (mysetup) 中有:

TK_LIBRARY=/usr/lib/python2.7/lib-tk:/usr/lib/python2.7/site-packages/PIL:/usr/lib   
TKPATH=/usr/lib/python2.7/lib-tk:/usr/lib/python2.7/site-packages/PIL:/usr/lib 
TCL_LIBRARY=/usr/lib 
export TCL_LIBRARY TK_LIBRARY TKKPATH   

export PYTHONPATH=/usr/lib/python2.7/lib-tk:/usr/lib/python2.7/lib-stdwin:/usr/lib/python2.7/lib-dynload:/usr/lib:.     

并使用 .mysetup 将它们放入你的环境中

答案3

看看pyside 包的文件列表,看来它只针对 Python 3.2 进行了编译。您可以:

  • 目前使用 3.2。3.3 可能与 13.04 一起提供。
  • 下载 pyside 的源代码(使用apt-get source pyside),然后针对 Python 3.3 重新编译它。

相关内容