Выпущен NumPy 2
Вышла версия NumPy 2.0, первая крупная новая версия с 2006 года. NumPy - это фундаментальная математическая библиотека для Python, и в этом выпуске добавлены новые функции и улучшения производительности, а также внесены изменения.
Python прост в использовании, удобен для новичков и достаточно мощный, чтобы создавать надежное программное обеспечение практически для любых задач. Но, как и любое другое программное обеспечение, Python может быть сложен в настройке и управлении.
В этой статье мы расскажем, как правильно настроить Python. Вы узнаете, как выбрать подходящую версию, как сделать так, чтобы несколько версий не наступали друг на друга, и как избежать острых углов и потенциальных подводных камней на этом пути.
В любой момент времени несколько различных версий Python активно получают обновления или, по крайней мере, исправления безопасности. Вы можете подумать, что имеет смысл выбрать самую последнюю версию. Однако для обеспечения совместимости со сторонними модулями всегда безопаснее выбирать версию Python, которая на одну большую точку отстает от текущей.
На момент написания этой статьи Python 3.12 является самой актуальной версией. Поэтому безопаснее всего использовать последнее обновление Python 3.11. Вы всегда можете опробовать новейшую версию в контролируемом режиме - подробнее об этом позже - но переход на одну версию назад гарантирует наилучшую совместимость с распространенными сторонними пакетами Python.
Python, как и Linux, также поставляется в различных дистрибутивах. Однако, в отличие от Linux, Python предлагает одну "официальную" версию, которая является золотым стандартом и на которую вы всегда можете опереться: CPython, версия, предоставляемая Python Software Foundation на сайте Python.org. Это самый безопасный и широко совместимый дистрибутив, за использование которого никого не увольняют. Возможно, вы захотите изучить и другие дистрибутивы Python, предназначенные для конкретных случаев использования, но здесь мы их рассматривать не будем.
Один из ключевых выборов, который вам может потребоваться сделать, особенно на Windows, - использовать 32-битную или 64-битную версию Python. Наиболее вероятный ответ - 64-битная, по следующим причинам:
Единственный случай, когда вам стоит выбрать 32-битную версию Python, - это если вы застряли с 32-битной версией Windows или если вам нужно использовать сторонний модуль, который доступен только в 32-битной версии. Поскольку с каждым днем это происходит все реже, 64-битная версия является наиболее распространенным выбором.
Python устанавливается в Windows точно так же, как и любое другое приложение, с помощью программы установки, которая проведет вас через весь процесс установки.
По умолчанию программа установки Python для Windows помещает свои исполняемые файлы в пользовательский каталог AppData, поэтому ей не требуются права администратора. Если вы единственный пользователь в системе, возможно, вам захочется поместить Python в каталог более высокого уровня (например, C:Python312), чтобы его было легче найти. Программа установки Windows позволяет указать целевой каталог.
Python.org предлагает различные версии Python для Windows. Помимо уже упомянутых 32-битной ("x86") и 64-битной ("x86-64") версий, вы можете выбрать встраиваемый zip-файл, исполняемый инсталлятор и веб-инсталлятор. Вот что они собой представляют:
Еще один вариант - использовать одну из систем управления пакетами Windows для установки Python.
Windows 11 теперь поставляется с предустановленным собственным решением Microsoft по управлению пакетами, Winget. (Если у вас Windows 10, вы можете установить его вручную). Вы можете установить официальные версии Python.org из winget, указав версию, например: winget install Python.Python.3.11, или использовать winget search Python.Python, чтобы узнать, какие версии доступны. (Смотрите мой видеоурок для ознакомления с использованием Winget).
Другие инструменты управления пакетами Windows также предлагают Python. NuGet, менеджер пакетов для .NET, предлагает Python в своем репозитории. Однако Python предоставляется там в основном для использования в качестве компонента в приложении .NET, а не как способ установить отдельный экземпляр Python для общего использования. Скорее всего, вам будет проще управлять своим экземпляром Python, если вы установите его обычным способом.
Chocolatey, более общая система управления пакетами Windows, также предлагает Python. Chocolatey - это удобный способ запуска программы установки Python и отслеживания наличия среды выполнения языка Python в вашей системе, и поэтому это лучший выбор, чем NuGet. Однако лучше не смешивать и не сочетать установки Chocolatey, winget и ручные установки Python в одной системе. Лучше всего остановиться на одном решении для управления пакетами и придерживаться его.
Поскольку дистрибутивы Linux значительно отличаются друг от друга, типичным способом установки Python в Linux является использование менеджера пакетов конкретного дистрибутива. Например, Ubuntu и Fedora имеют совершенно разные процедуры установки Python. В Linux (и macOS) целевая директория для установки обычно предопределена и основана на номере версии Python, например, /usr/bin/python3.X в Linux или /usr/local/opt/python/ на Mac.
Еще один инструмент Linux для управления несколькими установками Python - pyenv. Он позволяет установить несколько редакций Python, расположенных рядом друг с другом, и свободно переключаться между ними, как в масштабах всей системы, так и для каждого проекта. Обратите внимание, что pyenv собирает каждую версию Python, которую вы устанавливаете для своей системы, поэтому вам потребуется предварительно установить зависимости для сборки Python.
Один из способов избежать сложностей с менеджерами пакетов Linux - использовать контейнерную среду выполнения Python. Контейнеры работают изолированно от остальной системы, поэтому вам не нужно беспокоиться о том, что различные среды выполнения Python будут наступать друг другу на пятки. Однако если ваш рабочий процесс еще не включает контейнеры, вам придется потратить время и силы на освоение Docker. (Обратите внимание, что контейнерный Python можно использовать и под Windows).
Традиционно macOS поставлялась с установленной версией Python, но не более новой, чем Python 2.7. Это создавало проблемы с появлением Python 3, так как две версии часто конфликтовали. В официальной документации по Python есть некоторые заметки на этот счет, но в них нет более подробных рекомендаций, чем просто убедиться, что вы используете правильный путь для нужного вам экземпляра Python.
Общепринятым способом управления средами исполнения Python на macOS является менеджер пакетов Homebrew - неофициальный (то есть не созданный Apple) проект, который стал чем-то вроде стандарта де-факто для управления пакетами на Mac. Homebrew предоставляет согласованный интерфейс для загрузки, установки, управления и удаления Python и других сторонних приложений командной строки.
Мы обсудили основы установки Python на Windows, Linux и macOS. В заключение рассмотрим три распространенных сценария установки, которые требуют немного больше тонкостей.
Как только вы установили базовую версию Python, не начинайте устанавливать пакеты прямо в нее с помощью pip - нет, даже если вы планируете использовать Python только для одного проекта. Создайте каталоги проектов, установите в них виртуальные среды Python, а затем установите пакеты в эти виртуальные среды. Таким образом, базовая установка останется чистой.
Чтобы получить высокоуровневый способ управления несколькими проектами с виртуальными средами и зависимостями, обратите внимание на проект Poetry. Poetry предоставляет инструмент командной строки для управления виртуальными средами и зависимостями на высоком уровне.
Самый сложный вопрос при установке Python - как работать с разными версиями Python, установленными рядом. Здесь действуют два универсальных правила:
Использование нескольких версий Python является весомым аргументом в пользу виртуальных сред для каждого проекта. Когда виртуальная среда активирована, все действия с Python в контексте проекта автоматически направляются на нужную версию Python.
Другой вариант для пользователей Windows - приложение py launcher, которое позволяет контролировать, какую версию Python использовать при установке нескольких версий. Во время установки Python вам предлагается установить py launcher - небольшой исполняемый файл, который позволяет выбрать (с помощью флагов командной строки), какую версию Python использовать для того или иного скрипта. Например, чтобы запустить pip для Python 3.11, нужно ввести py -3.11 -m pip.
Обновление незначительных ревизий Python - например, Python 3.11.2 до Python 3.11.3 - обычно происходит достаточно просто. В Windows программа установки обнаруживает наличие существующей версии и обновляет ее. В Linux и macOS установщик или менеджер пакетов обычно делает то же самое.
Однако созданные вами виртуальные среды также потребуют обновления; они не обновляются автоматически. Чтобы обновить Python в виртуальной среде, просто перейдите в каталог виртуальной среды и введите venv --upgrade. Опять же, обратите внимание, что это лучше всего работает только для обновления незначительных ревизий.
Если вы выполняете обновление крупных ревизий, например, Python 3.11 до Python 3.12, лучше всего использовать venv для создания нового отдельного подкаталога виртуальной среды в каталоге проекта, переустановить в него все зависимости и перейти к использованию новой виртуальной среды. Большинство IDE с поддержкой Python (например, Microsoft Visual Studio Code) обнаруживают несколько виртуальных сред в проекте и позволяют переключаться между ними.
Вышла версия NumPy 2.0, первая крупная новая версия с 2006 года. NumPy - это фундаментальная математическая библиотека для Python, и в этом выпуске добавлены новые функции и улучшения производительности, а также внесены изменения.
В TypeScript 5.5 появились предикаты инференции типов, проверка синтаксиса регулярных выражений, оптимизация производительности и поддержка методов ECMAScript Set.
В июльском выпуске Android Jetpack Compose появились некоторые улучшения, он стал быстрее, но то ли это, что мы хотим?
Продолжаем добавлять языки программирования для Вас.
Впереди много интересного!
Только свежие новости программирования и технологий каждый день.
Комментарии