如何更改我的 PYTHONPATH 以将 3,2 设为我的默认 Python 而不是 2.7.2?

max*_*max 16 10.04 python command-line bash

我的 python3.2 位于/usr/lib/python3.2. 我不确定这是否意味着它已安装,但我认为是现在。

关于我的系统的一些事实:

$ which python
/usr/local/bin/python
Run Code Online (Sandbox Code Playgroud)

当我输入python终端时,我得到以下信息

$ python
Python 2.7.2 (default, Dec 19 2011, 11:12:13) 
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
Run Code Online (Sandbox Code Playgroud)

然后找到我做的路径

>>> sys.info
>>> sys.path
['', '/usr/local/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg', '/usr/local/lib/python2.7/site-packages/pip-1.0.2-py2.7.egg', '/usr/local/lib/python2.7/site-packages/PIL-1.1.7-py2.7-linux-x86_64.egg', '/usr/local/lib/python27.zip', '/usr/local/lib/python2.7', '/usr/local/lib/python2.7/plat-linux2', '/usr/local/lib/python2.7/lib-tk', '/usr/local/lib/python2.7/lib-old', '/usr/local/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/site-packages']
Run Code Online (Sandbox Code Playgroud)

那么知道了所有这些,我如何将我的默认系统 python 从 2.7.2 更改为 3.2?

小智 32

改默认python不好。许多系统程序依赖于 python2 而不是 python3。如果你想使用 python3,你只需输入命令python3

  • 对于支持库和工具(如 pyenv、fabric),他们希望 `/usr/bin/env python` 是你想要的。所以手动输入`python3`不是解决方案。 (4认同)

Ken*_*der 10

PYTHONPATH 与它没有太大关系。它只是告诉 Python 解释器,无论哪个解释器运行,在哪里可以找到要加载的额外模块。

但无论哪种方式,更改系统上的默认版本都是危险的,正如其他评论者所观察到的那样。您冒着破坏针对 Python2 构建的现有包的风险,并使用 /usr/bin/env python 来查找它们的解释器。

事实上,这是错误的表达方式。更改 Python 的默认版本会破坏整个 Ubuntu 系统并导致许多程序无法运行。这也是完全没有必要的。

但是既然你问了,你就这样做:

sudo rm /usr/bin/python
sudo ln -s /usr/bin/python3.2mu /usr/bin/python
Run Code Online (Sandbox Code Playgroud)

崩溃快乐!


小智 7

我在我的 中添加了这个,.bashrc到目前为止它工作正常:

alias python='python3'
Run Code Online (Sandbox Code Playgroud)