Answers:
正如其他人已经指出的那样,裸机sudo apt-get install package
将安装最新的可用版本,并在需要时替换较旧的版本。
但是对于某些软件(在Python中),情况有所不同。一些主要的,非常不兼容且不兼容的版本会获得自己的软件包。例如,Python 2.6,Python 2.7和Python 3.1都生活在Ubuntu上的单独软件包中。
尤为重要的是,Ubuntu策略之一就是广泛使用Python编写最终用户软件。因此,实际上,系统的很大一部分是用Python编写的。目前,该代码在Python 2.6上运行-因此该版本是安装时的默认版本;而且该代码也不会轻易在Python 2.7上运行-因为存在不兼容性。要将系统切换到Python 2.7,需要完成一些工作,包括更新和重新测试所有脚本。这不容易做到;也就是说,您不能仅将系统“切换”到Python 2.7并删除旧版本。
但。如果您不关心系统的花哨功能,而只需要更新的Python,那就没有障碍。去sudo apt-get install python3
和3.x的Python的勇敢代码; 只要记住要python3
使用#!/usr/bin/env python3
shebang行启动脚本并使用。
sudo apt-get install python 3.3.3
这是针对python(3.3.3)的不同版本,应使用相应的版本号。
sudo apt-get install python3.6
为我工作,但不会以任何方式影响Python 3.5。
sudo apt-get install python 3.6.1
> Note, selecting 'libghc-unix-time-dev-0.3.6-1b8cf' for regex '3.6.1' ...
分立的参数告诉我们要安装多个软件包
python is already the newest version (2.7.12-1~16.04). python set to manually installed.
有任何想法吗?
sudo apt-get install python3.6
这会将python 3与python 2一起安装在linux中。要访问python 3,请在打开终端后输入。
python3
E: Unable to locate package python3.6 E: Couldn't find any package by glob 'python3.6' E: Couldn't find any package by regex 'python3.6'
E: Unable to locate package python3.6
您已经想到了类似的命令sudo apt-get update
(这是一个实际的命令,但没有执行您想要的命令。)
要升级Python以及您已安装的所有其他产品,只需执行以下命令:
sudo apt-get upgrade
在我们的姊妹网站上:https : //askubuntu.com/questions/44122/how-to-upgrade-a-single-package-using-apt-get
这些命令中的每一个都是通过安装进行更新的,在许多情况下都可以正常工作,但在特定情况下可能并不是您所需要的。
如果您只想升级特定软件包并且仅在已经安装的情况下升级,请使用以下命令:
sudo apt-get install --only-upgrade packagename
如果您只想升级2.7.11+ t0 2.7.12等较小版本的python软件包,那么do sudo apt-get install python2.7
应该为您做
pyenv可能是您的一个不错的选择:https : //github.com/yyuu/pyenv
关于@ulidtko的答案,完全替代系统python的一种可能替代方法可能是使用具有所需python版本的隔离环境。这类似于“虚拟环境”,但适用于python本身。过去,我曾在运行于python 2.6的旧版项目以及从python的旧版升级到python3时使用过它。
apt-get install python
我相信这应该可行。很明显,您将需要更改“ python”以匹配适当的软件包名称。
众所周知,Python带有3.5版本。因此,将Python 2.7(默认情况下存在于Ubuntu 16.04中)更新为Python 3.5非常简单。
请按照以下步骤操作:
使用下面的代码将Python 2.7更新到3.5
须藤apt-get install python3.5
系统将要求您提供许可,然后选择“给选项Y”。
clear
通过以下命令检查python版本。
python-版本
在运行LTS版本的单一情况下,您的python可能落后于次要版本,例如2.7.5,而不是2.7.10。
一种可能是升级系统:
prompt=normal
在/etc/update-manager/release-upgrades
sudo do-release-upgrade
以使升级管理器执行其工作以升级到最新(= non-LTS)版本。