Новые версии Python не сразу попадают в официальные репозитории Ubuntu. Поэтому при попытке установить новую версию питона командой sudo apt install python3.x
без дополнительной настройки не получится.
Для установки актуальной версии Python на Ubuntu, необходимо добавить в систему ссылку на PPA репозиторий и произвести установку оттуда. В данном случаем, необходим репозиторий группы deadsnakes:
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt update && sudo apt install python3.6
После установки новой версии Python, команда python3
по-прежнему будет вызывать Python той версии, которая была предустановлена в Ubuntu.
Допускается изменение символической ссылки со старой версии на новую, в рамках одной ветки, однако, стоит воздержаться от изменения ссылки с Python 2 на Python 3 (почему?):
rm /usr/bin/python3
ln -s /usr/bin/python3.6 /usr/bin/python3
То же самое можно сделать и для модуля документации pydoc:
rm /usr/bin/pydoc3
ln -s /usr/bin/pydoc3.6 /usr/bin/pydoc3
Так или иначе, в Ubuntu существуют зависимости с предустановленной версией Python, поэтому безопасней будет использовать алиас в ~/.bash_aliases
для запуска скриптов в новой версии:
echo "alias python3='/usr/bin/python3.6'" >> ~/.bash_aliases
Запускаемые скрипты через терминал, должны начинаться с:
#!/usr/bin/env python3
2 комментария
почему стоит воздержатся?
Python 3.0 не поддерживает обратную совместимость. Программы, которые написаны на Python 2 и работающие с командой
python
при вызове будут ожидать python2, а не python3. Так могут поломаться многие программы и скрипты установленные в системе. Источник: https://stackoverflow.com/a/5846177/8740732