Как узнать версию python linux
Перейти к содержимому

Как узнать версию python linux

  • автор:

Как узнать используемую версию питона?

Помогите пожалуйста понять почему я вижу разные версии python через командную строку.

md@md ~/.MINT17/code/python/alien_invasion $ python -V Python 3.7.0 md@md ~/.MINT17/code/python/alien_invasion $ python3 -V Python 3.4.3 md@md ~/.MINT17/code/python/alien_invasion $ virtualenv -p python3.4 venv Running virtualenv with interpreter /usr/bin/python3.4 Using base prefix '/usr' New python executable in venv/bin/python3.4 Also creating executable in venv/bin/python Installing setuptools, pip. done. md@md ~/.MINT17/code/python/alien_invasion $ md@md ~/.MINT17/code/python/alien_invasion/venv/bin $ source activate (venv)md@md ~/.MINT17/code/python/alien_invasion/venv/bin $ python -V Python 3.7.0 (venv)md@md ~/.MINT17/code/python/alien_invasion/venv/bin $ python3 -V Python 3.4.3

Как видите, команды
python -V
и
python3 -V
показывают разные версии. Причём даже когда virtualenv включен. Как такое возможно?

  • Вопрос задан более трёх лет назад
  • 4369 просмотров

Комментировать
Решения вопроса 1
Pestilence_brain @Pestilence_brain

Он показывает разные версии, видимо из-за автонастройки консоли при установке Python. Так возможно, когда устанавливали Python 3.7.0 «path» команда для консоли закрепилась как python, a python3 как версия 3.4.3

Ответ написан более трёх лет назад
Комментировать
Нравится 1 Комментировать
Ответы на вопрос 2

Radjah

ls -la `which python` ls -la `which python3`

А так можно долго гадать.

Как узнать версию python linux

На одной рабочей машине одновременно может быть установлено несколько версий Python. Это бывает полезно, когда идет работа с некоторыми внешними библиотеками, которые поддерживают разные версии python, либо в силу каких-то других причин нам надо использовать несколько разных версий. Например, на момент написания статьи последней и актуальной является версия Python 3.11 . Но, допустим, необходимо также установить версию 3.10 , как в этом случае управлять отдельными версиями Python?

Windows

На странице загрузок https://www.python.org/downloads/ мы можем найти ссылку на нужную версию:

Управление несколькими версиями Python

И также загрузить ее и установить:

Установка разных версий Python на Windows

Чтобы при использовании интерпретатора Python не прописывать к нему весь путь, добавим при установке его в переменные среды. Но здесь надо учитывать, что в переменных среды может содержаться несколько путей к разным интерпретаторам Python:

Установка разных версий Python на Windows в переменные среды

Та версия Python, которая находится выше, будет версией по умолчанию. С помощью кнопки «Вверх» можно нужную нам версию переместить в начало, сделав версией по умолчанию. Например, в моем случае это версия 3.11. Соответственно, если я введу в терминале команду

python --version

или

py --version

то консоль отобразит версию 3.11:

C:\python>python --version Python 3.11.0

Для обращения к версии 3.10 (и всем другим версиям) необходимо использовать указывать номер версии:

C:\python>py -3.10 --version Python 3.10.9

например, выполнение скрипта hello.py с помощью версии 3.10:

py -3.10 hello.py

Подобным образом можно вызывать и другие версии Python.

MacOS

На MacOS можно установить разные версии, например, загрузив с официального сайта пакет установщика для определенной версии.

Для обращения к определенной версии Python на MacOS указываем явным образом подверсию в формате python3.[номер_подверсии] . Например, у меня установлена версия Python 3.10. Проверим ее версию:

python3.10 --version

Аналогично обращении к версии python3.9 (при условии если она установлена)

python3.9 --version

К примеру выполнение скрипта hello.py с помощью версии python 3.10:

python3.10 hello.py

Linux

На Linux также можно установить одновременно несколько версий Python. Например, установка версий 3.10 и 3.11:

sudo apt-get install python3.10 sudo apt-get install python3.11

Одна из версий является версий по умолчанию. И для обращения к ней достаточно прописать python3 , например, проверим версию по умолчанию:

python3 --version

Для обращения к другим версиям надо указывать подверсию:

python3.10 --version python3.11 --version

Например, выполнение скрипта hello с помощью версии Python 3.10:

python3.10 hello.py

Но может сложиться ситуация, когда нам надо изменить версию по умолчанию. В этом случае применяется команда update-alternatives для связывания определенной версии Python с командой python3. Например, мы хотим установить в качестве версии по умолчанию Python 3.11. В этом случае последовательно выполним следующие команды:

sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 1 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.11 2

Числа справа указывают на приоритет/состояние. Так, для версии 3.11 указан больший приоритет, поэтому при обращении к python3 будет использоваться именно версия 3.11 (в моем случае это Python 3.11.0rc1)

Управление версиями Python в linux

С помощью команды

sudo update-alternatives --config python3

можно изменить версию по умолчанию

Как проверить версию Python

Python — один из самых популярных языков программирования в мире. Он используется для разработки веб-сайтов, написания скриптов, машинного обучения, анализа данных и многого другого.

В этой статье объясняется, как с помощью командной строки проверить, какая версия Python установлена в вашей операционной системе. Это может быть полезно при установке приложений, которым требуется определенная версия Python.

Мы также покажем вам, как программным способом определить, какая версия Python установлена в системе, в которой выполняется скрипт Python. Например, при написании сценариев Python вам необходимо определить, поддерживает ли сценарий версию Python, установленную на машине пользователя.

Управление версиями Python

Python использует семантическое управление версиями . Версии готовых к выпуску релизов представлены по следующей схеме:

MAJOR.MINOR.MICRO 

Например, в Python 3.6.8 3 — основная версия, 6 — дополнительная версия, а 8 — микроверсия.

  • MAJOR — Python имеет две основные версии, которые не полностью совместимы: Python 2 и Python 3. Например, 3.5.7 , 3.7.2 и 3.8.0 являются частью основной версии Python 3.
  • MINOR — эти выпуски содержат новые возможности и функции. Например, 3.6.6 , 3.6.7 и 3.6.8 являются частью дополнительной версии Python 3.6.
  • MICRO — Новые микроверсии содержат различные исправления ошибок и улучшения.

В выпусках для разработки есть дополнительные квалификаторы. Для получения дополнительной информации прочтите документацию Python «Цикл разработки» .

Проверка версии Python

Python предварительно установлен в большинстве дистрибутивов Linux и macOS. В Windows его необходимо скачать и установить.

Чтобы узнать, какая версия Python установлена в вашей системе, выполните команду python --version или python -V :

python --version

Команда напечатает версию Python по умолчанию, в данном случае 2.7.15 . Версия, установленная в вашей системе, может отличаться.

Python 2.7.15+ 

Версия Python по умолчанию будет использоваться всеми сценариями, в которых /usr/bin/python установлен в качестве интерпретатора в строке сценария shebang .

В некоторых дистрибутивах Linux одновременно установлено несколько версий Python. Обычно двоичный файл Python 3 называется python3 , а двоичный файл Python 2 называется python или python2 , но это может быть не всегда.

Вы можете проверить, установлен ли у вас Python 3, набрав:

python3 --version
Python 3.6.8 

Поддержка Python 2 заканчивается в 2020 году. Python 3 — это настоящее и будущее языка.

На момент написания этой статьи последним основным выпуском Python была версия 3.8.x. Скорее всего, в вашей системе установлена более старая версия Python 3.

Если вы хотите установить последнюю версию Python, процедура зависит от используемой вами операционной системы.

Программная проверка версии Python

Python 2 и Python 3 принципиально разные. Код, написанный на Python 2.x, может не работать в Python 3.x.

Модуль sys , доступный во всех версиях Python, предоставляет системные параметры и функции. sys.version_info позволяет определить версию Python, установленную в системе. Это кортеж , который содержит пять номеров версий: major , minor , micro , releaselevel и serial .

Допустим, у вас есть сценарий, для которого требуется Python версии не ниже 3.5, и вы хотите проверить, соответствует ли система требованиям. Вы можете сделать это, просто проверив major и minor версии:

import sys if not (sys.version_info.major == 3 and sys.version_info.minor >= 5): print("This script requires Python 3.5 or higher!") print("You are using Python <>.<>.".format(sys.version_info.major, sys.version_info.minor)) sys.exit(1) 

Если вы запустите скрипт с использованием Python версии ниже 3.5, он выдаст следующий результат:

This script requires Python 3.5 or higher! You are using Python 2.7. 

Чтобы написать код Python, работающий как под Python 3, так и под Python 2, используйте модуль future . Он позволяет запускать код, совместимый с Python 3.x, под Python 2.

Выводы

Узнать, какая версия Python установлена в вашей системе, очень просто, просто введите python --version .

Не стесняйтесь оставлять комментарии, если у вас есть вопросы.

Как настроить python в Linux под свой проект?

Привет, Хабр! Меня зовут Дмитрий Алексеев, я Data Scientist и являюсь участником профессионального сообщества NTA. Сегодня расскажу как использовать python и Linux «в связке», и как это поможет облегчить вам жизнь.

Операционная система Linux получила большую популярность среди админов и разработчиков благодаря ряду преимуществ таким, как бесплатное распространение, наличие открытого исходного кода, низкие требования к вычислительным ресурсам.

Python интерпретатор предустановлен в большинстве дистрибутивов Linux. Согласно рейтингу TIOBE на текущий момент самым упоминаемым в поисковых запросах языком программирования является python. Python обладает низким порогом входа, но имеет большой спектр возможностей для применения.

Использование python и Linux «в связке» может сильно облегчить вам жизнь. Я расскажу о том, как настроить python в Linux под нужды своего проекта.

Определение виртуальной среды

Виртуальная окружение (или виртуальная среда) — это изолированная среда для проекта. Это «песочница», в рамках которой запускается приложение со своими версиями библиотек, обновление и изменение которых не затронет другие приложения, использующие те же библиотеки. Тем самым использование виртуальных сред позволяет избежать конфликтов версий.

Виртуальное окружение со всеми необходимыми настройками можно «передавать» вместе с вашим приложением. Так другому разработчику будет проще работать с вашим проектом.

Также библиотеки, которые необходимы только в одном проекте, можно подгрузить в виртуальное окружение и тем самым не засорять глобальное окружение.

Проверка версии Python

Как уже говорилось ранее, python предустановлен в большинстве дистрибутивов Linux. Я использовал версию Ubuntu 20.04.

Проверить текущую версию python можно с помощью команды: python3 -V.

Обновление пакетов

Вначале рассмотрим работу с python библиотеками в Linux.

Advanced Package Tool (apt) – это пакетный менеджер, позволяющий производить различные манипуляции с пакетами: устанавливать, удалять, обновлять, искать, загружать без установки. При этом все зависимости будут разрешаться автоматически.

Пакет – это архив, в котором содержатся бинарные и конфигурационные файлы, информация о том, куда их разместить в файловой системе и список действий по установке. В Linux python библиотеки являются пакетами.

В Linux есть список репозиториев, из которых происходит установка пакетов. Список хранится в текстовом файле /etc/apt/sources.list, а также в директории /etc/apt/sources.list.d/. При выполнении команды apt update, apt обращается к списку репозиториев и из каждого репозитория в списке получает информацию о пакетах, находящихся в нем. Вся эта информация сохраняется в операционной системе.

Если выходит новая версия библиотеки, то apt не узнает об этом, пока не будет обновлена информация в репозиториях. Поэтому, если установить пакет, предварительно не выполнив обновление, то будет установлена та версия пакета, информация о которой хранится в системе в данный момент.

Для обновления пакетов необходимо выполнить следующие две команды.

Первая команда: sudo apt update.

Вторая команда: sudo apt -y upgrade.

Флаг -y в команде обозначает автоматическое подтверждение запросов на установку.

Установка пакетов venv

Для работы с виртуальным окружением в Linux нужно установить пакет venv с помощью следующей команды: sudo apt install python3-venv.

Создание виртуальной среды в Linux

Создать виртуальное окружение можно командой python3 -m venv my_venv.

My_venv – название виртуального окружения.

Приведенная выше команда создает каталог с именем «my_venv» (а также родительские каталоги, которые ещё не существуют), содержащий менеджер пакетов pip, интерпретатор, скрипты и библиотеки.

С помощью команды ls -la можно увидеть файлы в текущей директории.

Если вы хотите создать папку с окружением в конкретной директории, то вместо названия окружения нужно указать путь к папке. Например, python3 -m venv ~/my_venv.

Далее перейду в созданный каталог и посмотрю содержимое созданной папки.

Файл pyvenv.cfg содержит ключ, который будет указывать на ту версию Python, для которой запущена эта команда.

Каталог bin содержит копию/символическую ссылку двоичных файлов Python.

Каталог include включает в себя С-заголовки, компилирующие пакеты Python.

В каталог share входит python wheels. Python wheels — это формат готовых пакетов для Python, который помогает ускорить разработку программного обеспечения за счет сокращения количества операций компиляции.

Каталог lib в виртуальной среде имеет такую же структуру, как каталог lib в глобальном окружении. И содержит папку site-packages, в которую устанавливаются библиотеки.

Активация виртуальной среды

Виртуальное окружение создано. Для начала работы с окружением нужно его активировать.

Чтобы начать использовать эту виртуальную среду, вам необходимо активировать ее, запустив скрипт под названием activate:

После активации строка консоли будет иметь префикс с именем среды.

Можно проверить версию python.

А также посмотреть список установленных в окружении библиотек.

Установим библиотеку внутри виртуальной среды

Попробую установить библиотеку в окружение.

После активации все библиотеки будут устанавливаться в данное виртуальное окружение.

Чтобы проверить как установилась библиотека, можно попробовать импортировать её.

Если при импорте ошибок не было, значит установка библиотеки прошла успешно.

Совместное использование

Если вы хотите, чтобы другие могли на своих компьютерах запустить код вашего проекта, то помимо кода им необходимо иметь те же версии библиотек, что и у вас.

Для этого создадам файл, в котором будут прописаны все необходимые библиотеки и их версии.

Выполню следующую команду:

Файл requirements.txt содержит все библиотеки (с указанием их версий), которые установлены в данном окружении.

Установить все эти библиотеки можно выполнив одну команду в терминале: pip install -r requirements.txt.

После успешной установки библиотек другой человек сможет запустить ваш проект на своем компьютере.

Деактивация

Чтобы выйти из виртуального окружения, необходимо ввести команду deactivate.

Заключение

В публикации я рассмотрел тему виртуальных окружений в Linux. Материал позволит вам более осознанно подходить к процессу разработки и облегчит поддержку ваших проектов. Остались вопросы, буду рад ответить на них в комментариях.

  • Python
  • Разработка под Linux

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *