如何在Ubuntu上安装Python 3.4?

如果我打开终端并输入python,我会看到版本是2.7.4。我如何获取Python 3.4?如果我有Sublime Text,是否需要IDLE?


1这是一个重复的问题,已经在http://askubuntu.com/questions/350751/ubuntu-13-04-install-and-running-python-3-at-the-same-time-than-python-2-7-x上有了答案。 - don.joey
6@don.joey:不,这不是重复的问题,因为14.04版本已经默认安装了Python 3.4。 - Florian Diesch
@FlorianDiesch我以为13.04也默认安装了Python 3。 - don.joey
拥有旧版本的Python有什么用?是否有办法卸载旧版本并将新版本设置为默认? - A Umar Mukthar
9个回答

稳定版的Ubuntu 14.04已安装Python 3.4。您需要使用python3来使用Python 3.4。例如,要执行脚本file.py,请使用:

python3 file.py

这将使用Python 3.4来解释您的程序,或者您可以使用shebang使其可执行。您的程序的第一行应该是:
#!/usr/bin/env python3

然后使用chmod +x file.py来分配可执行权限,然后运行你的Python脚本,使用./file.py来执行,这将使用Python3来执行。
如果你希望在终端输入python时使用Python3,你可以使用别名。要添加一个新的别名,打开你的~/.bash_aliases文件,使用gedit ~/.bash_aliases命令,并输入以下内容:
alias python=python3

然后保存并退出,然后输入。
source ~/.bash_aliases

然后你可以输入
python file.py

将python3设置为您的默认Python解释器。

不,您不需要使用IDLE来使用python3解释您的程序。


谢谢。有没有办法在我想要解释一个Python文件(例如"examplefile.py")时避免输入"~/Dropbox/XXX/Pythonfiles/examplefile.py"这样的路径? - empedokles
顺便说一句:我在文件管理器中找不到.bash_aliases文件。 - empedokles
  1. 你可以先进入该目录(~/Dropbox/XXX/Pythonfiles/),然后输入python examplefile.py(这可能很愚蠢,不是你期望的方式)。
  2. 你可以将python ~/Dropbox/XXX/Pythonfiles/examplefile.py作为一个整体别名,创建一个自定义别名命令,当你输入该命令时就会执行。
  3. 如果之前没有任何别名,那么你将找不到它,这完全没关系,你可以创建一个别名。
- jobin
在终端中创建这个 .bash_aliases 文件的命令是什么? - empedokles
谢谢,这个方法有效。chmod +x file.py 是针对所有文件还是只针对单个 python 文件? - empedokles
@user262849:仅适用于单个文件。 - jobin
应该使用#!/usr/bin/env python3代替#!/usr/bin/python3,以获得更大的灵活性。 - glarrain
我绝对绝对不会将python=python3。这样做会破坏你的操作系统上运行在python 2.7等版本上的一切东西。 - Chris
要在终端中创建此.bash_aliases文件,请输入以下命令:sh -c "echo 'alias python=python3' >> ~/.bash_aliases" - Torben Gundtofte-Bruun

Python 3 在现代版本的 Ubuntu 上默认安装,所以您应该已经安装好了它:
python3 -V

安装idle 3的步骤如下:
sudo apt-get install idle-python3.4

我在我的Ubuntu桌面上遇到了同样的问题。我的Python书告诉我只需在终端中键入python就可以调用Python,但它只调用了之前的Python版本2。
首先检查一下你是否有Python版本3。打开命令终端,输入
``` python3 ```
你看到确认信息了吗?完成。
如果没有,使用以下命令行进行安装。
``` sudo apt-get install python3 ```
希望这能帮到你!

在Ubuntu 14.04上,默认安装了Python 3.4。
根据PEP-394的建议,您可以使用pythonpython2来运行Python v2(2.7),并使用python3来运行Python v3(3.4)。

如何将Python 3.4设置为Netbeans IDE的默认版本?目前默认版本是2.7.6,当我点击自动检测时,它无法识别3.4.1。在Python平台管理器(Netbeans IDE 8.0.1)中无法检测到。 - A J

Ubuntu 18.04 LTS 及以上版本

自 Ubuntu 18.04 版本及以后,您无需安装 Python 3,因为它已经默认安装。

对于 Ubuntu 18.04 LTS 和 Debian Buster,我们希望将 Python 3.6 过渡为默认(可能也是唯一)的 Python 3 版本。

参考资料:


否则,请按照以下命令进行安装:
sudo apt-get install python3

然后要查找多个Python安装,请运行以下其中一个命令:

whereis python
which -a python python2 python3
locate python

或者只需键入python命令并按两次Tab
要列出已安装的Python软件包,请运行:dpkg -l | grep -w python
要安装特定版本,请参阅:如何安装特定版本的Ubuntu软件包?

好的,这给了我Python 3.6。还有可用的存储库中有Python 3.7;然而,我需要针对3.4特别测试一个软件包。有没有无麻烦的选择? - ulidtko
@ulidtko 请参考:如何安装特定版本的Ubuntu软件包? - kenorb

如果只需要一个脚本,你可以在本地临时使用别名。
安装Letsencrypt时,我收到了以下警告:
$ ./letsencrypt-auto --help 

InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
  InsecurePlatformWarning

原因是需要Python 2.7.9版本,但安装的是2.7.5版本。Python 3也可以使用。我打开了脚本并在shebang后插入了以下别名:
alias python=python3

然后脚本起作用了。当一切完成后,这个别名被移除了。它只适用于此脚本。所以从终端启动 python 仍然得到的是版本2.7.5。

在终端中输入:python3 终端会自动提示要输入的内容:
sudo apt-get install python3-minimal

执行此操作将安装Python 3.2.3。
然后在终端中输入:python3.4,您将进入Python 3.4.1。

2只是安装了Python 3.2.3,找不到Python 3.4的命令。 - radtek

Python3.4已经安装在您的系统上,您只需要使用python3而不是python来调用它。

有很多遗留的Python应用程序存在,因此需要Python 2.x。然而,正如其他人提到的那样,python3 -V显示已安装Python 3.4.0,并且在Ubuntu 14.x上也有它。
 python -V     shows   2.7.6

 python3 -V    shows   3.4.0

知道要使用哪个翻译员就取决于你。