Я хочу обновить сборку Python на моем Linux-компьютере, но я знаю, как это сделать, - удалить текущую версию и установить новую. Моя система уже обновлена (я вчера обновил). Я хотел знать, есть ли способ обновить определенную программу из командной строки, например sudo apt-get update <program-name>
. Я знаю, что эта команда не существует, но я надеюсь, что что-то эквивалентное делает.
10 ответов
Как уже отмечали другие, пакет установки 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
строка для Шебанга .
sudo apt-get install python 3.3.3
для python(3.3.3) для другой версии должен использоваться соответствующий номер версии.
sudo apt-get install python3.6
Это устанавливает Python 3 в Linux вдоль стороны Python 2.Для доступа к Python 3 введите после того, как вы открыли терминал.
python3
С нашего родственного сайта: https://askubuntu.com/questions/44122/how-to-upgrade-a-single-package-using-apt-get
Каждая из этих команд обновляется путем установки, которая во многих случаях должна работать нормально, но может не подходить для конкретного случая.
Если вы хотите обновить только конкретный пакет И только если он уже установлен, используйте команду:
sudo apt-get install --only-upgrade packagename
Если вы хотите обновить только минорную версию пакета python, например 2.7.11+ t0 2.7.12, тогда выполните sudo apt-get install python2.7
Pyenv может быть хорошим вариантом для вас: https://github.com/yyuu/pyenv
Что касается ответа @ ulidtko, возможной альтернативой полной замене системного Python может быть использование изолированной среды с желаемой версией Python. Это похоже на "виртуальную среду", но для самого Python. Я использовал это в прошлом для устаревших проектов, работающих на python 2.6, а также при обновлении с прежней версии python до python3.
Вы близки к мысли о такой команде, как sudo apt-get update
(которая является реальной командой, но не выполняет то, что вы хотите.)
Чтобы обновить Python и все остальное, что вы установили, просто выполните команду:
sudo apt-get upgrade
Как мы все знаем, Python поставляется с версией 3.5. Поэтому очень просто обновить Python 2.7(который по умолчанию присутствует в Ubuntu 16.04) до Python 3.5.
Выполните следующие шаги:
- Откройте терминал.
- Станьте пользователем root с помощью команды sudo.
Используйте код ниже, чтобы обновить Python 2.7 до 3.5
sudo apt-get установить python3.5
Вас спросят о вашем разрешении, затем дайте вариант Y.
- Подождите, пока не завершите процесс.
- очистить экран с помощью команды
clear
Проверьте версию Python командой ниже.
версия Python
apt-get install python
Я считаю, что это должно работать. Вам нужно будет изменить «python», чтобы он соответствовал подходящему имени пакета в вашем хранилище.
В одном случае, когда вы используете LTS-версию, ваш питон может отставать от вспомогательной версии, скажем, 2.7.5 вместо 2.7.10.
Одной из возможностей будет обновление системы:
- установить
prompt=normal
в/etc/update-manager/release-upgrades
- обновить систему
- в командной строке вы можете набрать
sudo do-release-upgrade
чтобы менеджер обновлений выполнил свою работу по обновлению до последней (= не-LTS) версии. - решение с графическим интерфейсом использует менеджер обновлений
- в командной строке вы можете набрать
Как всегда при обновлении, обратите внимание на примечания к выпуску, так как обновление может сломать вашу систему в некоторых случаях, см . Комментарий @ Gino.