Как пользоваться python на windows
Перейти к содержимому

Как пользоваться python на windows

  • автор:

Как пользоваться python на windows

Для создания программ на Python нам потребуется интерпретатор. Для его установки перейдем на страницу https://www.python.org/downloads/ и найдем ссылку на загрузку последней версии языка:

Установка Python

По нажатию на кнопку будет загружен соответствующей текущей ОС установщик Python. Следует учитывать, что Windows 7 и более ранние версии не поддерживаются.

На ОС Windows при запуске инсталлятора запускает окно мастера установки:

Установка дистрибутива Python 3.11 на Windows

Здесь мы можем задать путь, по которому будет устанавливаться интерпретатор. Оставим его по умолчанию, то есть C:\Users\[имя_пользователя]\AppData\Local\Programs\Python\Python312\ .

Кроме того, в самом низу отметим флажок «Add Python 3.12 to PATH», чтобы добавить путь к интерпретатору в переменные среды.

После этого мы можем проверить установку Python и его версию, запустив в командной строке/треминале команду

python --version

Запуск интерпретатора

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

Как было сказано в прошлой теме, программа интерпретатора, если при установке не был изменен адрес, по умолчанию устанавливается на Linux по пути usr/local/bin/python311 , а на Windows по пути C:\Users\[имя_пользователя]\AppData\Local\Programs\Python\Python311\ и представляет файл под названием python.exe .

Интерпретатор Python

Запустим интерпретатор и введем в него следующую строку:

print("hello world")

И консоль выведет строку «hello world»:

Python 3.12.0 (tags/v3.12.0:0fb18b0, Oct 2 2023, 13:03:39) [MSC v.1935 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> print("hello world") hello world >>>

Для этой программы использовалась функция print() , которая выводит некоторую строку на консоль.

Создание файла программы

В реальности, как правило, программы определяются во внешних файлах-скриптах и затем передаются интерпретатору на выполнение. Поэтому создадим файл программы. Для этого на диске C или где-нибудь в другом месте файловой системы определим для скриптов папку python . А в этой папке создадим новый текстовый файл, который назовем hello.py . По умолчанию файлы с кодом на языке Python, как правило, имеют расширение py .

Создание скрипта на языке Python

Откроем этот файл в любом текстовом редакторе и добавим в него следующий код:

name = input("Введите имя: ") print("Привет,", name)

Python в Visual Studio Code

Скрипт состоит из двух строк. Первая строка с помощью функции input() ожидает ввода пользователем своего имени. Введенное имя затем попадает в переменную name .

Вторая строка с помощью функции print() выводит приветствие вместе с введенным именем.

Теперь запустим командную строку/терминал и с помощью команды cd перейдем к папке, где находится файл с исходным кодом hello.py (например, в моем случае это папка C:\python).

cd c:\python

Далее вначале введем полный путь к интерпретатору, а затем полный путь к файлу скрипта. К примеру, в моем случае в консоль надо будет вести:

C:\Users\eugen\AppData\Local\Programs\Python\Python312\python.exe hello.py

Но если при установке была указана опция «Add Python 3.12 to PATH» , то есть путь к интерпретатору Python был добавлен в переменные среды, то вместо полного пути к интерпретатору можно просто написать python:

python hello.py

Либо даже можно сократить:

py hello.py

Варианты с обоими способами запуска:

Microsoft Windows [Version 10.0.22621.2361] (c) Корпорация Майкрософт (Microsoft Corporation). Все права защищены. C:\Users\eugen>cd c:\python c:\python>C:\Users\eugen\AppData\Local\Programs\Python\Python312\python.exe hello.py Введите имя: Eugene Привет, Eugene c:\python>python hello.py Введите имя: Tom Привет, Tom c:\python>py hello.py Введите имя: Bob Привет, Bob c:\python>

В итоге программа выведет приглашение к вводу имени, а затем приветствие.

Начало работы с Python в Windows для начинающих

Это пошаговое руководство для пользователей, начинающих работу с Python в Windows.

Настройка среды разработки

Для начинающих, которые не знакомы с Python, рекомендуется установить Python из Microsoft Store. При установке из Microsoft Store используется базовый интерпретатор Python3, но в дополнение к автоматическому обновлению также настраиваются параметры пути для текущего пользователя (без необходимости доступа администратора). Это особенно полезно, если вы работаете из среды образовательного учреждения или являетесь частью организации, которая ограничивает разрешения или административный доступ на компьютере.

Если вы используете Python в Windows для разработки веб-приложений, мы рекомендуем настроить среду разработки другим образом. Вместо установки непосредственно в Windows рекомендуется установить и использовать Python через подсистему Windows для Linux. Дополнительные сведения см. в статье «Начало работы с Python для веб-разработки в Windows». Если вы заинтересованы в автоматизации распространенных задач в операционной системе, ознакомьтесь с нашим руководством. Начало работы с Python в Windows для сценариев и автоматизации. Для некоторых сложных сценариев (например, необходимо получить доступ к установленным файлам Python или изменить файлы Python, создавать копии двоичных файлов или использовать библиотеки DLL Python напрямую), вам может потребоваться скачать конкретный выпуск Python непосредственно из python.org или рассмотреть возможность установки альтернативы, например Anaconda, Jython, PyPy, WinPython, IronPython и т. д. Мы рекомендуем использовать это только в том случае, если вы являетесь более продвинутым программистом Python с определенной причиной выбора альтернативной реализации.

установите Python;

Чтобы установить Python с помощью Microsoft Store, сделайте следующее:

  1. Перейдите в меню Пуск (значок Windows в нижнем левом углу), введите «Microsoft Store» и щелкните ссылку, чтобы открыть магазин.
  2. Когда магазин откроется, выберите Поиск в верхнем правом меню и введите «Python». Выберите, какую версию Python вы хотите использовать, из результатов в разделе «Приложения». Мы рекомендуем использовать самую последнюю версию, если только у вас нет причин для обратного (например, по причине согласования с версией, использованной в уже существующем проекте, над которым вы планируете работать). Определив, какую версию вы хотите установить, выберите Получить.
  3. После того как Python завершит процесс загрузки и установки, откройте Windows PowerShell, используя меню Пуск (значок Windows в нижнем левом углу). После открытия PowerShell введите Python —version , чтобы убедиться, что Python 3 установлен на компьютере.
  4. Установка Python из Microsoft Store содержит стандартный диспетчер пакетов pip. Pip позволяет устанавливать дополнительные пакеты, которые не входят в стандартную библиотеку Python, и управлять ими. Чтобы убедиться, что у вас есть pip, который можно использовать для установки пакетов и управления ими, введите pip —version .

Установите Visual Studio Code.

При использовании VS Code в качестве текстового редактора или интегрированной среды разработки (IDE) вам доступны IntelliSense (помощь в завершении кода), анализ кода (помогает избежать ошибок в коде), поддержка отладки (помогает находить ошибки в коде после запуска), фрагменты кода (шаблоны для небольших повторно используемых блоков кода) и модульное тестирование (тестирование интерфейса кода с различными типами входных данных).

VS Code также содержит встроенный терминал, который позволяет открывать командную строку Python с помощью командной строки Windows, PowerShell или любой другой, создавая простой рабочий процесс между редактором кода и командной строкой.

Python command line in VS Code

  1. Чтобы установить VS Code, скачайте VS Code для Windows: https://code.visualstudio.com.
  2. Установив VS Code, необходимо также установить расширение Python. Для установки расширения Python можно выбрать ссылку на VS Code в Marketplace или открыть VS Code и выполнить поиск по фразе Python в меню расширений (Ctrl+Shift+X).
  3. Python — интерпретируемый язык, и для выполнения кода Python необходимо указать VS Code, какой интерпретатор нужно использовать. Мы рекомендуем использовать самую последнюю версию Python, если у вас нет особой причины для обратного. После установки расширения Python выберите интерпретатор Python 3, открыв палитру команд (CTRL+SHIFT+P), начните вводить команду Python: выберите интерпретатор для поиска, а затем выберите команду. Вы также можете использовать параметр Select Python Environment (Выбрать среду Python) в нижней строке состояния, если она доступна (возможно, уже отображается выбранный интерпретатор). Команда предоставляет список доступных интерпретаторов, которые VS Code может найти автоматически, включая виртуальные среды. Если нужный интерпретатор не отображается, перейдите к статье о настройке сред Python.
  4. Чтобы открыть терминал в VS Code, выберите Просмотр>Терминал или используйте клавиши CTRL+` (символ обратного апострофа). Терминалом по умолчанию является PowerShell.
  5. В окне терминала VS Code откройте Python, просто введя команду: python
  6. Попробуйте использовать интерпретатор Python, введя: print(«Hello World») . Python вернет фразу «Hello World».

Установка Git (необязательно)

Если вы планируете совместно работать над кодом Python с другими пользователями или размещать проект на сайте с открытым исходным кодом (например, GitHub), примите во внимание, что VS Code поддерживает управление версиями с помощью Git. Вкладка системы управления версиями в VS Code отслеживает все изменения и содержит общие команды Git (добавление, фиксация, принудительная отправка, извлечение) прямо в пользовательском интерфейсе. Сначала необходимо установить Git для включения панели управления версиями.

  1. Скачайте и установите Git для Windows с веб-сайта git-scm.
  2. В комплект входит мастер установки, который задает вам ряд вопросов о параметрах установки Git. Рекомендуется использовать все параметры по умолчанию, если у вас нет конкретной причины изменить какой-либо из них.
  3. Если вы никогда не использовали Git, обратитесь к руководствам по GitHub. Они помогут вам приступить к работе.

Учебник по некоторым основам работы с Python (на примере Hello World)

Python, согласно его создателю Гвидо ван Россуму, — это «язык программирования высокого уровня, и его основная философия проектирования — это удобочитаемость кода и синтаксис, позволяющий программистам выразить концепции в нескольких строках кода».

Python — интерпретируемый язык. В отличие от скомпилированных языков, в которых написанный код необходимо перевести в машинный код для выполнения процессором компьютера, код Python передается непосредственно интерпретатору и запускается напрямую. Просто введите код и запустите его. Попробуем сделать это!

  1. Откройте командную строку PowerShell и введите python , чтобы запустить интерпретатор Python 3. (В некоторых инструкциях указано использовать команду py или python3 , которые также подойдут.) Если вы делаете все правильно,появится командная строка с тремя символами «больше, чем» >>>.
  2. Существует несколько встроенных методов, позволяющих вносить изменения в строки в Python. Создайте переменную с помощью команды variable = ‘Hello World!’ . Нажмите клавишу ВВОД для создания новой строки.
  3. Выведите переменную с помощью команды print(variable) . Отобразится текст «Hello World!».
  4. Выясните, сколько символов используется для переменной строки, с помощью команды len(variable) . Будет показано, что используется 12 символов. (Обратите внимание, что пробел учитывается как символ в общей длине.)
  5. Преобразуйте строковую переменную в буквы верхнего регистра: variable.upper() . Теперь преобразуйте строковую переменную в буквы нижнего регистра: variable.lower() .
  6. Подсчитайте, сколько раз буква «l» используется в строковой переменной: variable.count(«l») .
  7. Найдите определенный символ в вашей строковой переменной. Давайте найдем восклицательный знак с помощью команды variable.find(«!») . Будет показано, что восклицательный знак находится в позиции 11 строки.
  8. Замените восклицательный знак на вопросительный знак: variable.replace(«!», «?») .
  9. Чтобы выйти из Python, введите exit() , quit() или нажмите клавиши CTRL+Z.

PowerShell screenshot of this tutorial

Надеемся, вам понравилось использовать некоторые из встроенных в Python методов модификации строк. Теперь попробуйте создать файл программы Python и запустить его с помощью VS Code.

Учебник по использованию Python с VS Code (на примере Hello World)

Команда VS Code составила отличный учебник по началу работы с Python с пошаговым руководством по созданию программы Hello World с помощью Python, запуску программного файла, настройке и запуску отладчика, а также установке пакетов, таких как matplotlib и numpy, для создания графического изображения в виртуальной среде.

    Откройте PowerShell и создайте пустую папку с именем hello, перейдите в эту папку и откройте ее в VS Code:

mkdir hello cd hello code . 

Создание простой игры с помощью Pygame

Pygame running a sample game

Pygame — это популярный пакет Python для создания игр, который позволяет учащимся изучать программирование увлекательным способом. Pygame отображает графические изображения в новом окне, поэтому метод «только командной строки» WSL не подойдет. Но если вы установили Python с помощью Microsoft Store, как описано в этом учебнике, все получится.

  1. После установки Python установите Pygame из командной строки (или терминала в VS Code), введя python -m pip install -U pygame —user .
  2. Протестируйте установку, запустив пример игры: python -m pygame.examples.aliens
  3. Если все в порядке, откроется окно игры. По завершении игры закройте окно.

Вот как начать написание кода собственной игры:

    Откройте PowerShell (или командную строку Windows) и создайте пустую папку с именем bounce. Перейдите к этой папке и создайте файл с именем bounce.py. Откройте папку в VS Code:

mkdir bounce cd bounce new-item bounce.py code . 
import sys, pygame pygame.init() size = width, height = 640, 480 dx = 1 dy = 1 x= 163 y = 120 black = (0,0,0) white = (255,255,255) screen = pygame.display.set_mode(size) while 1: for event in pygame.event.get(): if event.type == pygame.QUIT: sys.exit() x += dx y += dy if x < 0 or x >width: dx = -dx if y < 0 or y >height: dy = -dy screen.fill(black) pygame.draw.circle(screen, white, (x,y), 8) pygame.display.flip() 

Pygame running the next big thing

  • Сохраните его как: bounce.py .
  • Запустите его в терминале PowerShell, введя: python bounce.py .
  • Попробуйте изменить некоторые из чисел, чтобы увидеть, как они влияют на прыгающий шарик.

    Дополнительные сведения о создании игр с помощью Pygame см. на сайте pygame.org.

    Материалы для непрерывного обучения

    Мы рекомендуем использовать следующие ресурсы, чтобы продолжить изучение разработки на Python в Windows.

    • Блоги разработчиков Майкрософт: Python: ознакомьтесь с последними обновлениями обо всех вещах Python в Майкрософт.

    Бесплатные онлайн-ресурсы для обучения Python

    • Введение в Python. Попробуйте интерактивную платформу Microsoft Learn и заработать точки опыта для выполнения этого модуля, охватывающего основы написания базового кода Python, объявления переменных и работы с входными и выходными данными консоли. Интерактивная среда песочницы предоставляет эту отличную возможность начать пользователям, у которых еще не настроена среда разработки Python.

    Руководство по Python для начинающих. Полный и бесплатный учебник Python с интерактивными примерами кода (запускаемой) идеально подходит для начинающих и для тех, кто имеет предыдущий опыт.

    • LearnPython.org учебники. Приступая к обучению Python без необходимости устанавливать или настраивать что-либо с помощью этих бесплатных интерактивных учебников Python от людей в DataCamp.
    • Учебники по Python.org: впервые вводите читателя в основные понятия и функции языка Python и системы.

    Платные и премиум курсы Python

    • Python в Pluralsight: 8 курсов, 29 часов: схема обучения Python в Pluralsight предлагает онлайн-курсы, посвященные различным темам, связанным с Python, включая инструмент для измерения навыка и поиска пробелов.
    • Обучение Python на LinkedIn.com: базовое введение в Python.

    Работа с Python в VS Code

    • Редактирование Python в VS Code: узнайте больше о том, как воспользоваться преимуществами автоматической компиляции VS Code и поддержки IntelliSense для Python, включая настройку их поведения. или просто отключите их.
    • Linting Python: Linting — это процесс выполнения программы, которая будет анализировать код для потенциальных ошибок. Узнайте о различных формах поддержки анализа кода VS Code для Python и о том, как выполнить его настройку.
    • Отладка Python: отладка — это процесс выявления и удаления ошибок из компьютерной программы. В статье по этой ссылке описывается инициализация и настройка отладки для Python с помощью VS Code, установка и проверка точек останова, присоединение локального скрипта, выполнение отладки для различных типов приложений или на удаленном компьютере, а также некоторые основные способы устранения неполадок.
    • Модульное тестирование Python: описывает некоторые общие сведения о том, что означает модульное тестирование, пример пошагового руководства, включение платформы тестирования, создание и запуск тестов, отладка тестов и параметры конфигурации тестов.

    Давай начнем работать с Python

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

    Python возник в конце 80-х годов, и его основная цель — быть понятным для людей (а не только машин!). Благодаря этому он выглядит простым, но не беспокойся — Python кроме этого ещё и очень мощный язык!

    Установка Python

    Примечание: если ты используешь Chromebook, пропусти эту главу, но выполни инструкции по настройке для Chromebook

    Примечание: если ты уже прошла шаги установки, не нужно делать это снова — можешь переходить прямо к следующей главе!

    Для проходящих руководство дома: эта глава рассмотрена в видео Installing Python & Code Editor.

    Этот подраздел основан на руководстве Geek Girls Carrots (https://github.com/ggcarrots/django-carrots)

    Django написан на Python. Нам нужен Python, чтобы сделать что-нибудь в Django. Давай начнем с его установки! Мы хотим, чтобы ты установила самую свежую версию Python 3, поэтому, если у тебя уже есть более ранняя версия, то её придется обновить. Если у тебя уже установлена версия 3.6 или более высокая, она должна подойти.

    Установка Python: Windows

    Для начала проверь, какая версия Windows у тебя на компьютере — 32-битная или 64-битная. Это будет указано в строке «Тип системы» на странице «Сведения о системе». Чтобы попасть туда, попробуй один из этих способов:

    • Нажми одновременно клавиши Windows и Pause/Break
    • Открой панель управления из меню Windows, оттуда перейди в «Система и безопасность», затем в «Система»
    • Нажми клавишу Windows, затем перейди по разделам Настройки > Система > О системе

    Ты можешь загрузить Python для Windows с официального веб-сайта: https://www.python.org/downloads/windows/. Перейди по ссылке «Latest Python 3 Release — Python x.x.x». Если у тебя установлена 64-битная версия Windows, скачай Windows installer (64-bit). Если нет — скачай Windows installer (32-bit). После загрузки дистрибутива ты должна запустить его (двойным щелчком) и следовать инструкциям.

    Обрати внимание на экран мастера установки, который называется «Setup» (Настройка): тебе нужно пролистать его вниз и выбрать опцию «Add Python 3.8 to the PATH» (Добавить Python 3.8 к системной переменной PATH), как на рисунке (это может выглядеть по-разному в зависимости от версии, которую ты устанавливаешь):

    Не забудь добавить Python в системную переменную Path

    Когда установка закончится, ты можешь увидеть предложение узнать больше о Python или об установленной тобой версии. Закрой это окно — ты узнаешь намного больше в этом руководстве!

    Примечание: если ты используешь старую версию Windows (7, Vista или ещё более старую версию), и установка Python 3.8 завершается выводом сообщения об ошибке, ты можешь попробовать:

    1. либо установить все доступные обновления Windows и попробовать установить Python 3.8 заново;
    2. либо установить более раннюю версию Python, например, 3.4.6.

    Если тебе пришлось установить раннюю версию Python, экран установки может выглядеть чуть иначе, чем показано выше. Не забудь прокрутить окно до строки «Add python.exe to Path», затем нажми кнопку слева от неё и выбери пункт «Will be installed on local hard drive»:

    Добавление Python в переменную Path, ранние версии

    Установка Python: OS X

    Примечание: перед установкой Python в OS X тебе нужно проверить, что в настройках твоего Mac разрешено устанавливать пакеты, загруженные не из App Store. Перейди в Системные настройки (в папке «Программы»), нажми «Защита и безопасность» и выбери вкладку «Общие». Если в разделе «Разрешать загрузки из:» выбран вариант «App Store для Mac», смени его на «App Store для Mac и от установленных разработчиков».

    Тебе нужно перейти по ссылке https://www.python.org/downloads/macos/ и скачать дистрибутив Python:

    • Скачай файл macOS 64-bit universal2 installer,
    • Сделай двойной щелчок на python-3.8.6-macosx11.pkg для запуска установщика.

    Установка Python: Linux

    Вполне вероятно, что у тебя уже установлен Python. Чтобы проверить это (а также версию языка), открой консоль и введи следующую команду:

    $ python3 --version Python 3.8.6 

    Если у тебя установлена другая версия Python, не меньше чем 3.6 (например, 3.6.8), то нет необходимости обновляться. Если Python не установлен, или ты хочешь использовать другую версию языка, то можешь установить его следующим образом:

    Установка Python: Debian или Ubuntu

    Введи эту команду в консоль:

    3. Использование Python в Windows¶

    Данный документ призван описать специфичного для Windows поведения, о котором вы должны знать при использовании Python в Microsoft Windows.

    В отличие от большинства систем и служб Unix, Windows не включает поддерживаемую системой установку Python. Чтобы сделать Python доступным, команда CPython в течение многих лет собирала установщики Windows (пакеты MSI) с каждым релизом. Данные установщики в первую очередь предназначены для добавления установки Python для каждого пользователя, при этом основной интерпретатор и библиотека используются одним пользователем. Установщик также можно установить для всех пользователей одного компьютера, а для локальных дистрибутивов приложения доступен отдельный ZIP-файл.

    Как указано в PEP 11, версия Python поддерживает только платформу Windows, в то время как Microsoft считает эту платформу находящейся под расширенной поддержкой. Это означает, что Python 3.8 поддерживает Windows Vista и новее. Если вам требуется поддержка Windows XP, установите Python 3.4.

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

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

    Пакет Microsoft Store — это простая установка Python, которая подходит для запуска скриптов и пакетов, а также использования IDLE или других сред разработки. Для него требуется Windows 10, но его можно безопасно установить, не повреждая другие программы. Он также предоставляет множество удобных команд для запуска Python и его инструментов.

    Пакеты nuget — это легкие установки, предназначенные для систем непрерывной интеграции. Они используются для создания пакетов Python или запуска скриптов, но они не обновляются и не имеют инструментов пользовательского интерфейса.

    Встраиваемый пакет — это минимальный пакет Python, подходящий для встраивания в более крупное приложение.

    3.1. Полный установщик¶

    3.1.1. Шаги установки¶

    Четыре Python 3.8 установщика доступны для загрузки — по две для 32-битной и 64-битной версий интерпретатора. Веб-установщик представляет собой небольшую начальную загрузку, и при необходимости он автоматически загружает необходимые компоненты. Автономный установщик включает компоненты, необходимые для установки по умолчанию, и требует только подключения к интернету для дополнительных функций. См. установку без скачивания , чтобы узнать о других способах избежать загрузки во время установки.

    После запуска установщика можно выбрать один из двух вариантов:

    ../_images/win_installer.png

    Если вы выберете «Установить сейчас»:

    • Вам не нужны права администратора (если не требуется обновление системы для библиотеки времени выполнения C или вы не устанавливаете Python запускальщик для Windows для всех пользователей)
    • Python будет установлен в ваш пользовательский каталог
    • Python запускальщик для Windows будет установлен в соответствии с опцией внизу первой страницы
    • Будут установлены стандартная библиотека, набор тестов, программа запуска и pip
    • Если этот параметр выбран, каталог установки будет добавлен в ваш PATH
    • Ярлыки будут видны только текущему пользователю

    Выбор «Настроить установку» позволит вам выбрать компоненты для установки, место установки и другие параметры или действия после установки. Чтобы установить отладочные символы или двоичные файлы, вам нужно будет использовать эту опцию.

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

    • Вам может потребоваться предоставить административные данные или разрешение
    • Python будет установлен в каталог Program Files
    • Python запускальщик для Windows будет установлен в каталог Windows
    • Дополнительные функции можно выбрать во время установки
    • Стандартная библиотека может предварительно скомпилирована в байт-код
    • Если этот флажок установлен, каталог установки будет добавлен в систему PATH
    • Ярлыки доступны для всех пользователей

    3.1.2. Снятие ограничения MAX_PATH¶

    Исторически у Windows было ограничение длины пути до 260 символов. Это означало, что более длинные пути не разрешатся и приводят к ошибкам.

    В последних версиях Windows это ограничение можно увеличить примерно до 32 000 символов. Вашему администратору потребуется активировать групповую политику «Включить длинные пути Win32» или установить для LongPathsEnabled значение 1 в разделе реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem .

    Это позволяет функции open() , модулю os и большинству других функций пути принимать и возвращать пути длиной более 260 символов.

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

    Изменено в версии 3.6: В Python была включена поддержка длинных путей.

    3.1.3. Установка без пользовательского интерфейса¶

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

    Чтобы полностью скрыть пользовательский интерфейс установщика и установить Python без вывода сообщений, передайте параметр /quiet . Чтобы пропустить взаимодействие с пользователем, но по-прежнему отображать прогресс и ошибки, передайте параметр /passive . Параметр /uninstall может передаваться для немедленного начала удаления Python — подсказка отображаться не будет.

    Все остальные параметры передаются как name=value , где обычно используется значение 0 , чтобы отключить функцию, 1 , чтобы включить функцию, или путь. Полный список доступных опций показан ниже.

    Имя Описание По умолчанию
    InstallAllUsers Выполнить общесистемную установку. 0
    TargetDir Каталог установки Выбранный на основе InstallAllUsers
    DefaultAllUsersTargetDir Каталог установки по умолчанию для всех пользователей %ProgramFiles%\Python X.Y или %ProgramFiles(x86)%\Python X.Y
    DefaultJustForMeTargetDir Каталог установки по умолчанию для установки только для меня %LocalAppData%\Programs\PythonXY или %LocalAppData%\Programs\PythonXY-32 или %LocalAppData%\Programs\PythonXY-64
    DefaultCustomTargetDir Пользовательский каталог установки по умолчанию, отображаемый в UI (пусто)
    AssociateFiles Создать файловые ассоциации, если лаунчер также установлен. 1
    CompileAll Компилировать все .py файлы в .pyc . 0
    PrependPath Добавление установленных каталогов Scripts в PATH и .PY в PATHEXT 0
    Shortcuts Создать ярлыки для интерпретатора, документации и IDLE, если установлен. 1
    Include_doc Установить Python мануал 1
    Include_debug Установить отладочные бинарники 0
    Include_dev Установка сборочных заголовков и библиотек 1
    Include_exe Установить python.exe и связанные файлы 1
    Include_launcher Установить Python запускальщик для Windows 1
    InstallLauncherAllUsers Установить Python запускальщик для Windows для всех пользователей. 1
    Include_lib Установить стандартную библиотеку и модули расширения 1
    Include_pip Установить комплектные pip и setuptools 1
    Include_symbols Установка отладочных символов ( * .pdb) 0
    Include_tcltk Установить поддержку Tcl/Tk и IDLE 1
    Include_test Установить стандартную библиотеку набора тестов 1
    Include_tools Установка скриптов утилиты 1
    LauncherOnly Только устанавливает лаунчер. Это переопределит большинство других вариантов. 0
    SimpleInstall Отключить большинство UI 0
    SimpleInstallDescription Настраиваемое сообщение, отображаемое при использовании упрощенного UI установки. (пусто)

    Например, чтобы без вывода сообщений установить стандартную общесистемную установку Python, вы можете использовать следующую команду (из командной строки с повышенными привилегиями):

    python-3.8.0.exe /quiet InstallAllUsers=1 PrependPath=1 Include_test=0

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

    python-3.8.0.exe InstallAllUsers=0 Include_launcher=0 Include_test=0 SimpleInstall=1 SimpleInstallDescription="Just for me, no test suite."

    (Обратите внимание, что отсутствие средства запуска также не учитывает ассоциации файлов и рекомендуется только для установки для каждого пользователя, когда также существует общесистемная установка, включающая средство запуска.)

    Перечисленные выше параметры также можно определить в файле с именем unattend.xml вместе с исполняемым файлом. Этот файл определяет список параметров и значений. Когда значение предоставляется как атрибут, оно будет, если возможно, преобразовано в число. Значения, предоставленные в виде текста элемента, всегда остаются в виде строк. В этом примере файла задаются те же параметры, что и в предыдущем примере:

      Name="InstallAllUsers" Value="no" />  Name="Include_launcher" Value="0" />  Name="Include_test" Value="no" />  Name="SimpleInstall" Value="yes" />  Name="SimpleInstallDescription">Just for me, no test suite  

    3.1.4. Установка без скачивания¶

    Поскольку некоторые функции Python не включены в первоначальную загрузку установщика, для их выбора может потребоваться подключение к интернету. Чтобы избежать этой необходимости, все возможные компоненты можно загрузить по запросу для создания полного макета, который больше не будет требовать подключения к интернету независимо от выбранных функций. Обратите внимание, что загрузка может занимать больше места, чем требуется, но если будет выполнено большое количество установок, очень полезно завести локальнокэшированную копию.

    Выполните следующую команду из командной строки, чтобы загрузить все возможные необходимые файлы. Не забудьте заменить фактическое имя вашего установщика python-3.8.0.exe и создать макеты в их собственных каталогах, чтобы избежать конфликтов между файлами с одинаковыми именами.

    python-3.8.0.exe /layout [optional target directory]

    Вы также можете указать параметр /quiet , чтобы скрыть отображение прогресса.

    3.1.5. Изменение установки¶

    После установки Python вы можете добавлять или удалять компоненты с помощью инструмента «Программы и компоненты», входящего в состав Windows. Выберите запись Python и выберите «Удалить/Изменение», чтобы открыть программу установки в режиме обслуживания.

    «Изменение» позволяет вам добавлять или удалять функции, изменяя флажки — неизмененные флажки ничего не устанавливают и не удаляют. Некоторые параметры не можно изменить в этом режиме, например каталог установки; чтобы изменить их, вам нужно будет удалить, а затем полностью переустановить Python.

    «Восстановить» проверит все файлы, которые были установлены с использованием текущих настроек, и заменит все удалённые или изменённые.

    «Удалить» удалит Python полностью, за исключением Python запускальщик для Windows , у которого есть отдельная запись в «Программы и компоненты».

    3.2. Пакет Microsoft Store¶

    Добавлено в версии 3.7.2.

    Пакет Microsoft Store — это легко устанавливаемый интерпретатор Python, который предназначен в основном для интерактивного использования, например, студентами.

    Чтобы установить пакет, убедитесь, что у вас установлены последние обновления Windows 10, и выполните поиск в приложении Microsoft Store по запросу «Python 3.8». Убедитесь, что выбранное приложение опубликовано Python Software Foundation, и установите его.

    Python всегда будет доступен бесплатно в Microsoft Store. Если с вас просят заплатить за него, то вы не выбрали правильный пакет.

    После установки Python можно запустить, найдя его в меню «Пуск». Кроме того, он будет доступен из любой командной строки или сеанса PowerShell, набрав python . Кроме того, можно использовать pip и IDLE, набрав pip или idle . IDLE также можно найти в меню Пуск.

    Все три команды также доступны с суффиксами номера версии, например, python3.exe и python3.x.exe , а также python.exe (где 3.x — это версия, которую вы хотите запустить, например 3.8). Открыть «Управление псевдонимами выполнения приложений» через Пуск, чтобы выбрать, какая версия Python связана с каждой командой. Рекомендуется убедиться, что pip и idle соответствуют выбранной версии python .

    Виртуальные среды можно создать с помощью python -m venv , активировать и использовать в обычном режиме.

    Если вы установили другую версию Python и добавили её в переменную PATH , она будет доступна как python.exe , а не из Microsoft Store. Чтобы получить доступ к новой установке, используйте python3.exe или python3.x.exe .

    Программа запуска py.exe обнаружит эту установку Python, но предпочтет установку из традиционного установщика.

    Чтобы удалить Python, открыть «Настройки» и используйте «Приложения и функции» или найти Python в меню «Пуск» и щелкните правой кнопкой мыши, чтобы выбрать «Удалить». При удалении будут удалены все пакеты, которые вы установили непосредственно в эту установку Python, но не удаляются никакие виртуальные среды

    3.2.1. Известные проблемы¶

    Из-за ограничений приложений Microsoft Store скрипты Python могут не получить полного доступа к записям общих расположений, таким как TEMP и реестр. Вместо этого будет записываться личная копия. Если ваши сценарии должны изменять общие расположения, вам необходимо установить полную версию установщика.

    Дополнительные сведения о технической основе этих ограничений см. в документации Microsoft по пакетным приложениям с полным доверием, которая в настоящее время доступна по адресу.

    3.3. Пакеты nuget.org¶

    Добавлено в версии 3.5.2.

    Пакет nuget.org — это среда Python уменьшенного размера, предназначенная для использования в системах непрерывной интеграции и сборки, не имеющих общесистемной установки Python. Хотя nuget является «диспетчером пакетов для .NET», он также отлично работает с пакетами, содержащими инструменты времени сборки.

    Посетите nuget для получения самой последней информации об использовании nuget. Ниже приводится краткое изложение, достаточное для разработчиков Python.

    Инструмент командной строки nuget.exe можно загрузить непосредственно с сайта nugetcli, например, с помощью curl или PowerShell. С помощью этого инструмента последняя версия Python для 64-битных или 32-битных машин устанавливается с использованием:

    nuget.exe install python -ExcludeVersion -OutputDirectory . nuget.exe install pythonx86 -ExcludeVersion -OutputDirectory .

    Чтобы выбрать версию, добавить -Version 3.x.y . Выходной каталог можно изменить с . , и пакет будет установлен в подкаталог. По умолчанию подкаталог называется так же, как и пакет, и без параметра -ExcludeVersion это имя будет включать установленную версию. Внутри подкаталога находится каталог tools , содержащий установку Python:

    # Without -ExcludeVersion > .\python.3.5.2\tools\python.exe -V Python 3.5.2 # With -ExcludeVersion > .\python\tools\python.exe -V Python 3.5.2

    Как правило, пакеты nuget не обновляются, и новые версии следует устанавливать параллельно и ссылаться на них, используя полный путь. Либо удалите каталог пакета вручную и установите его снова. Многие системы CI делают это автоматически, если они не сохраняют файлы между сборками.

    Рядом с каталогом tools находится каталог build\native . Он содержит файл свойств MSBuild python.props , который можно использовать в проекте C++ для ссылки на установку Python. Включение настроек автоматически приведёт к использованию заголовков и библиотек импорта в вашей сборке.

    Страницы с информацией о пакете на сайте: https://www.nuget.org/packages/python для 64-разрядной версии и www.nuget.org/packages/pythonx86 для 32-разрядной версии.

    3.4. Встраиваемый пакет¶

    Добавлено в версии 3.5.

    Встроенный дистрибутив представляет собой ZIP-файл, содержащий минимальную среду Python. Он предназначен для работы как часть другого приложения, а не для прямого доступа конечных пользователей.

    При извлечении встроенный дистрибутив (почти) полностью изолирован от системы пользователя, включая переменные среды, параметры системного реестра и установленные пакеты. Стандартная библиотека включена в виде предварительно скомпилированных и оптимизированных файлов .pyc в формате ZIP, а также python3.dll , python37.dll , python.exe и pythonw.exe . Tcl/tk (включая Idle), pip и документация Python не включены.

    Встроенный дистрибутив не включает Microsoft C Runtime, и установщик приложения несет ответственность за его предоставление. Среда выполнения могла быть уже установлена в системе пользователя ранее или автоматически через центр обновления Windows, и её можно обнаружить, найдя ucrtbase.dll в системном каталоге.

    При работе в Windows 7 Python 3.8 требует установки обновления KB2533623. Встраиваемый дистрибутив не обнаруживает это обновление и может дать сбой во время выполнения. Это обновление включено в более поздние версии Windows.

    Сторонние пакеты должны устанавливаться установщиком приложения вместе со встроенным дистрибутивом. Использование pip для управления зависимостями, как для обычной установки Python, не поддерживается этим дистрибутивом, хотя с некоторой осторожностью можно будет включить и использовать pip для автоматических обновлений. Как правило, сторонние пакеты следует рассматривать как часть приложения («поставку»), чтобы разработчик мог обеспечить совместимость с более новыми версиями перед предоставлением обновлений пользователям.

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

    3.4.1. Приложение Python¶

    Приложение, написанное на Python, не обязательно требует, чтобы пользователи знали об этом факте. В этом случае встроенный дистрибутив может использоваться для включения частной версии Python в установочный пакет. В зависимости от того, насколько прозрачным он должен быть (или, наоборот, насколько профессиональным он должен выглядеть), есть два варианта.

    Использование специализированного исполняемого файла в качестве средства запуска требует некоторого программирования, но предоставляет наиболее прозрачный интерфейс для пользователей. С настраиваемой программой запуска нет очевидных признаков того, что программа работает на Python: значки могут быть настроены, информация о компании и версии может отсутствовать, а ассоциации файлов работают правильно. В большинстве случаев пользовательская программа запуска должна просто иметь возможность вызывать Py_Main с жёстко запрограммированной командной строкой.

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

    При втором подходе пакеты следует устанавливать как каталоги вместе с исполняемым файлом Python, чтобы гарантировать их доступность по пути. С помощью специализированной программы запуска пакеты могут находиться в других местах, т. к. есть возможность указать путь поиска перед запуском приложения.

    3.4.2. Встраивание Python¶

    Приложения, написанные на машинном коде, часто требуют некоторого языка сценариев, и для этой цели можно использовать встроенный дистрибутив Python. Как правило, большая часть приложения написана на машинном коде, а некоторые его части либо вызывают python.exe , либо напрямую используют python3.dll . В любом случае распаковки встроенного дистрибутива в подкаталог установки приложения достаточно для предоставления загружаемого интерпретатора Python.

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

    3.5. Альтернативные связки¶

    Помимо стандартного дистрибутива CPython, есть модифицированные пакеты, включающие дополнительные функции. Ниже приводится список популярных версий и их основных функций:

    ActivePython Установщик с мультиплатформенной совместимостью, документацией, PyWin32 Anaconda Научно-популярные модули (numpy, scipy и pandas) и менеджер пакетов conda . Canopy «Среда комплексного анализа Python» с редакторами и прочими Инструментами разработки. WinPython Дистрибутив для Windows с готовыми научными пакетами и инструментами для сборки пакетов.

    Обратите внимание, что эти пакеты могут не включать последние версии Python или других библиотек и не поддерживаются основной командой Python.

    3.6. Настройка Python¶

    Чтобы удобно запускать Python из командной строки, вы можете подумать об изменении некоторых переменных среды по умолчанию в Windows. Хотя установщик предоставляет возможность настроить переменные PATH и PATHEXT для вас, это надежно только для одной общесистемной установки. Если вы регулярно используете несколько версий Python, подумайте об использовании Python запускальщик для Windows .

    3.6.1. Экскурс: установка переменных окружения¶

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

    Чтобы временно установить переменные среды, открыть командную строку и воспользоваться командой set:

    C:\>set PATH=C:\Program Files\Python 3.8;%PATH% C:\>set PYTHONPATH=%PYTHONPATH%;C:\My_python_lib C:\>python

    Данные изменения будут применяться ко всем дальнейшим командам, выполняемым в этой консоли, и будут унаследованы любыми приложениями, запускаемыми с консоли.

    Включение имени переменной в знаки процента расширит существующее значение, что позволит вам добавить новое значение либо в начало, либо в конец. Изменение PATH путём добавления в начало каталога, содержащего python.exe, является распространенным способом обеспечения запуска правильной версии Python.

    Чтобы навсегда изменить переменные среды по умолчанию, нажмите Пуск и найдите «Изменить переменные среды» или открыть свойства системы, Расширенные системные настройки и нажмите кнопку Переменные среды . В этом диалоговом окне вы можете добавлять или изменять пользовательские и системные переменные. Чтобы изменить системные переменные, вам потребуется неограниченный доступ к вашей машине (т. е. права администратора).

    Windows объединит пользовательские переменные после системных, что может привести к неожиданным результатам при изменении PATH .

    Переменная PYTHONPATH используется всеми версиями Python 2 и Python 3, поэтому вам не следует постоянно настраивать эту переменную, если она не включает только код, совместимый со всеми установленными вами версиями Python.

    3.6.2. Поиск исполняемого файла Python¶

    Изменено в версии 3.5.

    Помимо использования автоматически созданного пункта меню «Пуск» для интерпретатора Python, вы можете захотеть запустить Python из командной строки. У установщика есть возможность настроить это за вас.

    На первой странице установщика можно выбрать параметр «Add Python in PATH», чтобы установщик добавил место установки в PATH . Также добавляется расположение папки Scripts\ . Это позволяет вам ввести python для запуска интерпретатора и pip для установщика пакетов. Таким образом, вы также можете выполнять свои сценарии с параметрами командной строки, см. документацию по командная строке .

    Если вы не включите этот параметр во время установки, вы всегда можете повторно запустить установщик, выбрать «Изменение» и включить его. Кроме того, вы можете вручную изменить PATH , используя инструкцию Экскурс: установка переменных окружения . Вам необходимо установить переменную среды PATH , чтобы включить каталог вашей установки Python, отделенный точкой с запятой от других записей. Пример переменной может выглядеть так (при условии, что первые две записи уже существуют):

    C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\Python 3.8

    3.7. Режим UTF-8¶

    Добавлено в версии 3.7.

    Windows по-прежнему использует устаревшие кодировки для системной кодировки (кодовая страница ANSI). Python использует её для кодировки текстовых файлов по умолчанию (например, locale.getpreferredencoding() ).

    Это может вызвать проблемы, поскольку UTF-8 широко используется в интернете и в большинстве систем Unix, включая WSL (подсистема Windows для Linux).

    Вы можете использовать режим UTF-8, чтобы изменить кодировку текста по умолчанию на UTF-8. Вы можете включить режим UTF-8 с помощью параметра командной строки -X utf8 или переменной среды PYTHONUTF8=1 . См. PYTHONUTF8 для включения режима UTF-8 и Экскурс: установка переменных окружения для получения информации об изменении переменных среды.

    Когда включен режим UTF-8:

    • locale.getpreferredencoding() возвращает ‘UTF-8’ вместо системной кодировки. Функция используется для кодировки текста по умолчанию во многих местах, включая open() , Popen , Path.read_text() и т. д.
    • sys.stdin , sys.stdout и sys.stderr используют UTF-8 в качестве кодировки текста.
    • Вы по-прежнему можете использовать системную кодировку через кодек «mbcs».

    Обратите внимание, что добавление PYTHONUTF8=1 к переменным среды по умолчанию повлияет на все приложения Python 3.7+ в вашей системе. Если у вас есть приложения Python 3.7+, которые полагаются на устаревшую системную кодировку, рекомендуется временно установить переменную среды или использовать параметр командной строки -X utf8 .

    Даже когда режим UTF-8 отключен, Python по умолчанию использует UTF-8 в Windows для:

    • Консольного ввода/вывода, включая стандартный ввод/вывод (подробности см. в PEP 528).
    • Кодировки файловой системы (подробности см. в PEP 529).

    3.8. Python запускальщик для Windows¶

    Добавлено в версии 3.3.

    Программа запускальщик (Launcher) Python для Windows — это утилита, которая помогает находить и запускать различные версии Python. Он позволяет сценариям (или командной строке) указывать предпочтение для версии Python, а также находить и выполнять эту версию.

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

    Установка запускальщика изначально была указана в PEP 397.

    3.8.1. Начало¶

    3.8.1.1. Из командной строки¶

    Изменено в версии 3.6.

    При общесистемной установке Python 3.3 и более поздних версий программа запуска будет установлена на вашем PATH . Программа запуска совместима со всеми доступными версиями Python, поэтому не имеет значения, какая версия установлена. Чтобы убедиться, что средство запуска доступно, выполните следующую команду в командной строке:

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

    Если у вас установлено несколько версий Python (например, 2.7 и 3.8), вы заметите, что Python 3.8 запустился — для запуска Python 2.7 примените команду:

    py -2.7

    Если вы хотите установить последнюю версию Python 2.x, попробуйте выполнить команду:

    py -2

    Вы должны увидеть, что запускается последняя версия Python 2.x.

    Если вы видите следующую ошибку, у вас не установлена программа запуска:

    'py' is not recognized as an internal or external command, operable program or batch file.

    Установки Python для отдельных пользователей не добавляют средство запуска к PATH , если этот параметр не был выбран при установке.

    3.8.1.2. Виртуальные среды¶

    Добавлено в версии 3.5.

    Если средство запуска запущено без явной спецификации версии Python и активной виртуальной среды (созданная с помощью модуля стандартной библиотеки venv или внешнего инструмента virtualenv ), средство запуска будет запускать интерпретатор виртуальной среды, а не глобальный. Чтобы запустить глобальный интерпретатор, либо деактивируйте виртуальную среду, либо явно укажите глобальную версию Python.

    3.8.1.3. Из сценария¶

    Давайте создадим тестовый скрипт Python с именем hello.py со следующим содержимым:

    #! python import sys sys.stdout.write("hello from Python %s\n" % (sys.version,)) 

    Из каталога, в котором живет hello.py, выполните команду:

    py hello.py

    Вы должны заметить, что напечатан номер версии вашей последней установки Python 2.x. Теперь попробуйте изменить первую строку на:

    #! python3 

    Повторное выполнение команды должно теперь распечатать последнюю информацию о Python 3.x. Как и в приведенных выше примерах командной строки, вы можете указать более явный квалификатор версии. Предполагая, что у вас установлен Python 2.6, попробуйте изменить первую строку на #! python2.6 , и вы увидите напечатанную информацию о версии 2.6.

    Обратите внимание, что в отличие от интерактивного использования, чистый «питон» будет использовать последнюю версию Python 2.x, которую вы установили. Это сделано для обратной совместимости и совместимости с Unix, где команда python обычно относится к Python 2.

    3.8.1.4. Из файловых ассоциаций¶

    После установки программа запуска должна быть связана с Python файлами (т. е. файлами .py , .pyw , .pyc ). Это означает, что при двойном щелчке по одному из этих файлов в проводнике Windows будет использована программа запуска, и поэтому вы можете использовать те же средства, рассмотренные выше, чтобы сценарий указывал нужную версию.

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

    3.8.2. Шебанг строки¶

    Если первая строка файла сценария начинается с #! , она называется строкой «Шебанг». У Linux и других Unix-подобных операционных систем имеется встроенная поддержка таких строк, и они обычно используются в таких системах, чтобы указать, как должен выполняться сценарий. Модуль запуска позволяет использовать те же средства со сценариями Python в Windows, и приведенные выше примеры демонстрируют их использование.

    Чтобы обеспечить переносимость шебанг строк в сценариях Python между Unix и Windows, этот модуль запуска поддерживает ряд «виртуальных» команд, указывающих, какой интерпретатор использовать. Поддерживаемые виртуальные команды:

    • /usr/bin/env python
    • /usr/bin/python
    • /usr/local/bin/python
    • python

    Например, если первая строка вашего скрипта начинается с

    #! /usr/bin/python 

    Будет найден и применён Python по умолчанию. Поскольку многие сценарии Python, написанные для работы в Unix, уже содержат эту строку, вы должны обнаружить, что эти сценарии могут использоваться программой запуска без изменений. Если вы пишете новый сценарий в Windows, который, как вы надеетесь, будет полезен в Unix, вам следует использовать одну из шебанг строк, начинающихся с /usr .

    У любой из вышеперечисленных виртуальных команд может существовать суффикс явной версии (либо только основной версии, либо основной и дополнительной версии). Кроме того, 32-битную версию можно запросить, добавив «-32» после дополнительной версии. Т.е. /usr/bin/python2.7-32 запросит использование 32-разрядного Python 2.7.

    Добавлено в версии 3.7: Начиная с python 3.7 запускальщик может запрашивать 64-битную версию по суффиксу «-64». Кроме того, можно указать основное и архитектуру без второстепенных деталей (например, /usr/bin/python3-64 ).

    Форма шебанг строки /usr/bin/env содержит ещё одно особое свойство. Перед поиском установленных интерпретаторов Python данная форма выполнит поиск исполняемого файла Python в исполняемом файле PATH . Это соответствует поведению программы Unix env , которая выполняет поиск PATH .

    3.8.3. Аргументы в строках шебанга¶

    Шебанг строки также могут указывать дополнительные параметры, передаваемые интерпретатору Python. Например, если у вас есть шебанг строка:

    #! /usr/bin/python -v 

    Будет запущен Python с опцией -v

    3.8.4. Настройка¶

    3.8.4.1. Настройка через файлы INI¶

    Программа запуска будет искать два .ini файла — py.ini в каталоге «данных приложения» текущего пользователя (т. е. в каталоге, возвращенном вызовом функции Windows SHGetFolderPath с CSIDL_LOCAL_APPDATA ) и py.ini в том же каталоге, что и программа запуска. Одни и те же файлы .ini используются как для «консольной» версии программы запуска (например, py.exe), так и для версии «Windows» (например, pyw.exe).

    Настройка, указанная в «каталоге приложения», будет приоритетнее над настройкой рядом с исполняемым файлом, поэтому пользователь, у которого нет доступа на запись к файлу .ini рядом с программой запуска (launcher), может переопределить команды в глобальном .ini файле.

    3.8.4.2. Настройка версий Python по умолчанию¶

    В некоторых случаях квалификатор версии может добавляться к команде, чтобы указать, используемую версию Python. Квалификатор версии начинается с основного номера версии и может сопровождаться точкой («.») и указателем дополнительной версии. Кроме того, можно указать, будет ли запрашиваться 32- или 64-разрядная реализация, добавив «-32» или «-64».

    Например, у шебанг строки #!python нет квалификатора версии, а #!python3 содержит квалификатор версии, который указывает только основную версию.

    Если в команде не найдены квалификаторы версии, можно задать в переменной среды PY_PYTHON квалификатор версии по умолчанию. Если он не установлен, по умолчанию используется «3». Переменная может указывать любое значение, которое может передаваться в командной строке, например «3», «3,7», «3,7-32» или «3,7-64». (Обратите внимание, что параметр «-64» доступен только с программой запуска, включенной в Python 3.7 или новее.)

    Если квалификаторы младшей версии не найдены, переменная среды PY_PYTHON (где — квалификатор текущей основной версии, как определено выше) может установлен для указания полной версии. Если такой вариант не найден, средство запуска перечислит установленные версии Python и будет использовать последний дополнительный релиз, найденный для основной версии, который, скорее всего, хотя и не гарантируется, будет самой последней установленной версией в этом семействе.

    В 64-битной Windows с 32-битной и 64-битной реализациями одной и той же (major.minor) версии Python всегда будет предпочтительнее 64-битная версия. Это справедливо как для 32-разрядной, так и для 64-разрядной реализации средства запуска — 32-разрядная программа запуска предпочтёт выполнить 64-разрядную установку Python указанной версии, если она доступна. Это сделано для того, чтобы поведение средства запуска можно было предсказать, зная только, какие версии установлены на ПК, и независимо от порядка, в котором они были установлены (т. е., не зная, была ли установлена 32-или 64-разрядная версия Python и соответствующая программа запуска в последний раз). Как отмечалось выше, необязательный суффикс «-32» или «-64» можно использовать в спецификаторе версии, чтобы изменить это поведение.

    • Если соответствующие параметры не установлены, команды python и python2 будут использовать последнюю установленную версию Python 2.x, а команда python3 будет использовать последнюю установленную версию Python 3.x.
    • Команды python3.1 и python2.7 вообще не обращаются к каким-либо параметрам, поскольку версии полностью указаны.
    • Если PY_PYTHON=3 , команды python и python3 будут использовать последнюю установленную версию Python 3.
    • Если PY_PYTHON=3.1-32 , команда python будет использовать 32-разрядную реализацию 3.1, тогда как команда python3 будет использовать последнюю установленную версию Python (PY_PYTHON вообще не рассматривался, поскольку была указана основная версия)
    • Если PY_PYTHON=3 и PY_PYTHON3=3.1 , команды python и python3 будут использовать именно 3.1

    Помимо переменных среды, те же параметры можно настроить в файле .INI, используемом программой запуска. Раздел в файле INI называется [defaults] , и имя ключа будет таким же, как переменные среды без префикса PY_ в начале (и обратите внимание, что имена ключей в файле INI нечувствительны к регистру). Содержимое переменной среды будет переопределять настройки, указанные в INI-файле.

    • Установка PY_PYTHON=3.1 эквивалентна INI-файлу, содержащему:
    [defaults] python=3.1 
    • Установка PY_PYTHON=3 и PY_PYTHON3=3.1 эквивалентна INI-файлу, содержащему:
    [defaults] python=3 python3=3.1 

    3.8.5. Диагностика¶

    Если переменная среды PYLAUNCH_DEBUG установлена (в любое значение), программа запуска будет печатать диагностическую информацию в stderr (т. е. на консоль). Хотя данная информация может быть одновременно подробной и краткой, она должна позволить вам увидеть, какие версии Python были обнаружены, почему была выбрана версия и точная командная строка, используемая для выполнения целевого Python.

    3.9. Поиск модулей¶

    Python обычно хранит свою библиотеку (и, следовательно, папку site-packages) в каталоге установки. Итак, если вы установили Python в C:\Python\ , библиотека по умолчанию будет находиться в C:\Python\Lib\ , а сторонние модули должны храниться в C:\Python\Lib\site-packages\ .

    Чтобы полностью переопределить sys.path , создайте файл ._pth с тем же именем, что и DLL ( python37._pth ) или исполняемый файл ( python._pth ), и укажите по одной строке для каждого пути, который нужно добавить к sys.path . Файл на основе имени DLL переопределяет файл на основе исполняемого файла, что позволяет ограничивать пути для любой программы, загружающей среду выполнения, если это необходимо.

    Если файл существует, все переменные реестра и среды игнорируются, включается изолированный режим, и site не импортируется, если в одной строке файла не указано import site . Пустые пути и строки, начинающиеся с # , игнорируются. Каждый путь может быть абсолютным или относительным относительно местоположения файла. Операторы импорта, отличные от site , не разрешены, и нельзя указать произвольный код.

    Обратите внимание, что файлы .pth (без начального подчеркивания) будут нормально обрабатываться модулем site , если указан import site .

    Когда файл ._pth не найден, sys.path заполняется в Windows следующим образом:

    • В начало добавляется пустая запись, соответствующая текущему каталогу.
    • Если существует переменная среды PYTHONPATH , как описано в Переменные окружения , её записи добавляются следующими. Обратите внимание, что в Windows пути в этой переменной должны разделяться точкой с запятой, чтобы отличить их от двоеточия, используемого в идентификаторах дисков ( C:\ и т. д.).
    • Дополнительные «пути приложений» можно добавить в реестр как подразделы \SOFTWARE\Python\PythonCore\PythonPath в кусты HKEY_CURRENT_USER и HKEY_LOCAL_MACHINE . Подразделы, для которых в качестве значения по умолчанию используются строки пути, разделенные точками с запятой, будут вызывать добавление каждого пути в sys.path . (Обратите внимание, что все известные установщики используют только HKLM, поэтому HKCU обычно пуст.)
    • Если задана переменная среды PYTHONHOME , она принимается как «Дом для Python». В противном случае путь к основному исполняемому файлу Python используется для поиска «файла ориентира» (либо Lib\os.py , либо pythonXY.zip ) для определения «Дома Python». Если дом Python найден, соответствующие подкаталоги, добавленные в sys.path ( Lib , plat- win и т. д.), основаны на данном каталоге. В противном случае основной путь Python создаётся из PythonPath, хранящегося в реестре.
    • Если Дом Python не найден, в среде не указан PYTHONPATH и не найдены записи в реестре, используется путь по умолчанию с относительными записями (например, .\Lib;.\plat-win и т. д.).

    Если файл pyvenv.cfg находится рядом с основным исполняемым файлом или в каталоге на один уровень выше исполняемого файла, применяются следующие варианты:

    • Если home является абсолютным путём, а PYTHONHOME не задан, этот путь используется вместо пути к основному исполняемому файлу при определении исходного местоположения.

    Конечный результат всего этого есть:

    • При запуске python.exe или любого другого .exe в основном каталоге Python (либо установленной версии, либо непосредственно из каталога PCbuild) определяется путь к ядру, а пути к ядру в реестре игнорируются. Всегда считываются другие «пути приложений» в реестре.
    • Когда Python размещен в другом .exe (другом каталоге, встроенном через COM и т. д.), «Python Home» не выводится, поэтому используется основной путь из реестра. Всегда считываются другие «пути приложений» в реестре.
    • Если Python не может найти свой дом и нет значения реестра (замороженный .exe, очень странная установка), вы получить путь с некоторыми по умолчанию, но относительными путями.

    Для тех, кто хочет интегрировать Python в свое приложение или дистрибутив, следующий совет предотвратит конфликты с другими установками:

    • Поместите файл ._pth вместе с исполняемым файлом, содержащим подключаемые каталоги. При этом будут игнорироваться пути, перечисленные в переменных реестра и среды, а также игнорироваться site , если не указан import site .
    • Если вы загружаете python3.dll или python37.dll в собственный исполняемый файл, явно вызовите Py_SetPath() или (по крайней мере) Py_SetProgramName() перед Py_Initialize() .
    • Очистите и/или перезапишите PYTHONPATH и установите PYTHONHOME перед запуском python.exe из вашего приложения.
    • Если вы не можете использовать предыдущие предложения (например, вы являетесь дистрибьютором, который позволяет людям запускать python.exe напрямую), убедитесь, что файл ориентира ( Lib\os.py ) существует в вашем установочном каталоге. (Обратите внимание, что он не будет обнаружен внутри ZIP-файла, но вместо него будет обнаружен ZIP-файл с правильным именем.)

    Это гарантирует, что файлы в общесистемной установки не будут приоритетнее над копией стандартной библиотеки, поставляемой с вашим приложением. В противном случае у ваших пользователей могут возникнуть проблемы с использованием вашего приложения. Обратите внимание, что первое предложение является лучшим, т. к. другие могут быть подвержены нестандартными путями в реестре и пользовательских site-packages.

    • Добавляет поддержку файла ._pth и удаляет параметр applocal из pyvenv.cfg .
    • Добавляет pythonXX.zip в качестве потенциального ориентира при непосредственном соседстве с исполняемым файлом.

    Не рекомендуется, начиная с версии 3.6:

    Модули, указанные в реестре под Modules (не PythonPath ), могут импортироваться importlib.machinery.WindowsRegistryFinder . Этот поисковик включен в Windows начиная с версии 3.6.0 и более ранних, но, возможно, в будущем его потребуется явно добавить в sys.meta_path .

    3.10. Дополнительные модули¶

    Несмотря на то, что Python нацелен на переносимость между всеми платформами, есть функции, уникальные для Windows. Для использования этих функций существует пара модулей как в стандартной библиотеке, так и во внешних, а также фрагменты кода.

    Стандартные модули для Windows описаны в Специальных службах MS Windows .

    3.10.1. PyWin32¶

    Модуль PyWin32 от Марка Хаммонда — это набор модулей для расширенной поддержки Windows. Сюда входят утилиты для:

    • Модель компонентного объекта (COM)
    • Вызовы Win32 API
    • Реестр
    • Журнал событий
    • Классы Microsoft Foundation (MFC) пользовательских интерфейсов

    PythonWin — это образец приложения MFC, поставляемый с PyWin32. Это встраиваемая среда IDE со встроенным отладчиком.

    Как я работаю с win32 от Тима Голдена Python и COM Дэвида и Пола Бодди

    3.10.2. cx_Freeze¶

    cx_Freeze — это расширение distutils (см. Расширение Distutils ), которое превращает сценарии Python в исполняемые программы Windows (файлы * .exe ). Если вы это сделаете, вы можете распространять свое приложение, не требуя от пользователей установки Python.

    3.10.3. WConio¶

    Поскольку расширенный уровень обработки терминалов Python ( curses ) ограничен Unix-подобными системами, существует также библиотека, эксклюзивная для Windows: консольный ввод-вывод Windows для Python.

    WConio — это оболочка для Turbo-C CONIO.H , используемая для создания текстовых пользовательских интерфейсов.

    3.11. Компиляция Python в Windows¶

    Если вы хотите скомпилировать CPython самостоятельно, первое, что вам нужно сделать, это получить исходники. Вы можете скачать исходный код последней версии или просто взять свежий checkout.

    Исходное дерево содержит решение для сборки и файлы проекта для компилятора Microsoft Visual Studio 2015, используемого для сборки официальных выпусков Python. Данные файлы находятся в каталоге PCbuild .

    Обратитесь к PCbuild/readme.txt для получения общей информации о процессе сборки.

    По поводу модулей расширения обращайтесь к Создание расширений C и C++ в Windows .

    Python + Windows + distutils + SWIG + gcc MinGW или «Создание расширений Python на C/C++ с помощью SWIG и их компиляция с помощью MinGW gcc под Windows» или «Установка расширения Python с distutils и без Microsoft Visual C++» Себастьяна Соваж, 2003

    3.12. Другие платформы¶

    С продолжающейся разработкой Python некоторые раннее поддерживаемые платформы, больше не поддерживаются (из-за отсутствия пользователей или разработчиков). Подробную информацию обо всех неподдерживаемых платформах см. в PEP 11.

    • Windows CE по-прежнему поддерживается.
    • Программа установки Cygwin также предлагает установить интерпретатор Python (см. исходник пакета Cygwin, Релизы сопровождающего)

    См. Python для Windows чтобы получить подробную информацию о платформах с предварительно скомпилированными установщиками.

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

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