Ваша среда программирования на Python в Windows: Руководство по установке

Оглавление

Заинтересованы ли вы в написании кода на Python на компьютере с Windows? Возможно, вы уже давно пользуетесь Windows и начинаете программировать на Python, или, возможно, вы только начинаете осваивать macOS или Linux. В этом руководстве вы познакомитесь с простыми и гибкими настройками программирования на Python в Windows 10.

Примечание: Большинство описанных здесь действий будут одинаково хорошо работать в Windows 11.

Чтобы настроить свой компьютер с Windows для программирования на Python, вам необходимо:

  • Очистите и обновите новую установку Windows
  • Используйте менеджер пакетов для массовой установки ключевого программного обеспечения
  • Используйте встроенный ssh-keygen, чтобы сгенерировать SSH-ключи и подключиться к своей учетной записи на GitHub
  • Настройка среды разработки, включающей Ядро PowerShell, pyenv для Windows, Python и VS Code
  • Изучите сценарии и инструменты для автоматизации процесса настройки и инсталляции

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

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

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

Настройка базовой среды программирования на Python в Windows

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

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

В дополнение к установке того, что вам нужно, вы также узнаете, как обойти некоторые встроенные программы Microsoft, которые могут вам помешать. Ваш первый шаг - убедиться, что ваша установка Windows обновлена.

Обновление вашей установки Windows

Во-первых, если ваш компьютер новый или вы отключили обновления, то вам нужно убедиться, что ваша установка Windows обновлена. Обновление особенно актуально, если вы хотите использовать Подсистему Windows для Linux (WSL) и у вас Windows 10. Это также защита от ужасной автоматической перезагрузки Windows .

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

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

Windows updates control paned

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

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

После установки всех обновлений можно приступать к первоначальной настройке среды командной строки в программе настройки Windows Python coding setup.

Открытие терминала Windows

Если вы всегда пользовались Windows, то, возможно, вы привыкли использовать Командную строку и PowerShell через их собственные приложения. Открывая их таким образом, вы можете подумать, что это автономные программы. Однако, когда вы запускаете эти программы из меню "Пуск", выполняются два процесса. Один процесс - это то, что выполняет команды, а другой - это процесс отправки ваших входных данных и отображения выходных данных.

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

Для получения дополнительной информации о различиях между интерпретаторами команд и интерфейсами ознакомьтесь с разделом введение в оболочку в статье о модуле subprocess.

Windows создала новый терминал с открытым исходным кодом Windows Terminal, который станет универсальным консольным хостингом. Он действует как интерфейс для нескольких оболочек, позволяя вам запускать командную строку, PowerShell и любую другую оболочку, которые могут быть доступны в виде разных вкладок на одном хосте:

Windows Terminal Sample

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

Примечание: В этом руководстве вы не обязаны использовать Windows Terminal, но это рекомендуется. Похоже, что в мире UNIX люди гораздо чаще пользуются командной строкой, и отчасти это происходит из-за приятных возможностей доступных эмуляторов терминала.

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

Установка терминала Windows

Для настройки в этом руководстве вам необходимо установить приложение Terminal из магазина Microsoft Store, доступное из меню "Пуск". Установка программы из магазина Microsoft Store имеет несколько преимуществ. Одно из преимуществ заключается в том, что она обеспечивает автоматическую доставку обновлений. Еще одно преимущество заключается в том, что установка не вызывает проблем. Другие источники, по-видимому, ломаются относительно часто, предположительно из-за того, что Windows Terminal разрабатывается очень быстро.

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

После установки Windows Terminal в Microsoft Store вы сможете найти его в меню "Пуск" в разделе Терминал. Если по какой-либо причине вы не можете установить его из магазина Microsoft Store, попробуйте перейти на страницу релизов в репозитории GitHub.

Когда вы запускаете Windows Terminal, он должен автоматически запуститься с новой вкладкой PowerShell:

Windows Terminal with Windows PowerShell tab

Если все работает правильно, вы сможете переключать передачи для выполнения некоторых общих настроек Windows.

Настройка общих параметров Windows

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

Псевдонимы выполнения приложения

Псевдонимы выполнения приложений - это особый вид псевдонимов для Windows. Например, если вы наберете python в командной строке, Windows автоматически спросит вас, хотите ли вы установить версию Python из магазина Microsoft Store.

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

Панель управления псевдонимами выполнения приложений можно найти в меню "Пуск". Запись называется Управление псевдонимами выполнения приложений. Вот скриншот этой панели управления:

Windows Control panel for app execution aliases

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

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

Обновления Windows

Стоит поддерживать Windows в актуальном состоянии не только для обеспечения безопасности, но и для обновления всех инструментов разработчика, таких как Windows Terminal и WSL. Одна из особенностей Windows, которой вам следует избегать, - это автоматический перезапуск. Для этого вы можете отключить возможность перезагрузки вашего устройства с помощью Дополнительных параметров центра обновления Windows панели управления:

Windows Settings to turn off auto reboot

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

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

Проводник Windows

В попытке упростить использование проводника Windows для пользователей, не являющихся разработчиками, он скрывает некоторую информацию, которую вы, вероятно, захотите просмотреть, поэтому вам следует включить следующее:

  • Показывать расширения файлов
  • Показывать скрытые файлы
  • Показывать защищенные файлы операционной системы
  • Показывать полный путь к файлам в строке заголовка

Вы можете получить доступ к этим параметрам из проводника, который вы можете открыть с помощью Win+E, нажмите на Файл перейдите на вкладку в левом верхнем углу и выберите Изменить папку и параметры поиска. На вкладке Просмотр вы сможете найти следующие настройки:

Windows 10 File Explorer Settings

После настройки этих параметров вы сможете увидеть ранее скрытые файлы и их расширения.

Управление программным обеспечением в Windows

Для большинства пользователей Windows при установке программного обеспечения по умолчанию требуется перейти на веб-сайт, загрузить исполняемый файл и запустить его. Обычно исполняемый файл представляет собой Пакет установщика Windows с расширением .msi. Затем вам будет представлен экран Управления учетными записями пользователей (UAC), на котором вас попросят разрешить внести изменения в ваше устройство:

Windows 10 User Account Control screen

Если этого было недостаточно, вам придется прочитать лицензионное соглашение, нажать ОК несколько раз, а затем закрыть программу установки. Должен быть способ получше!

В системах на базе UNIX вы получаете приятные функции, называемые менеджерами пакетов, например, Homebrew, apt, dnf и pacman. Почему в Windows их нет? Что ж, в Windows есть несколько менеджеров пакетов на выбор, самый популярный из которых - Chocolatey.

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

Microsoft разрабатывает свой менеджер пакетов, winget. Несмотря на то, что он хорош и быстро совершенствуется, это все еще не самый популярный менеджер пакетов для Windows, и у него не так много пакетов на выбор, как у Chocolatey.

Перед установкой Chocolatey вам необходимо выполнить несколько действий в первую очередь.

Ослабление Вашей политики исполнения

Чтобы установить Chocolatey, вам нужно сначала открыть Windows Terminal или выбранную вами терминальную программу от имени администратора.

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

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

Как только вы откроете сеанс терминала администратора, вам должна быть представлена вкладка PowerShell.

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

Политика выполнения определяет, насколько строго ваша система относится к запуску сценариев из других источников. Для этого руководства вам нужно установить значение RemoteSigned:

PS> Set-ExecutionPolicy RemoteSigned
Execution Policy Change
The execution policy helps protect you from scripts that you don't trust.
...
Do you want to change the execution policy?
[Y] Yes [N] No [S] Suspend [?] Help (default is "Y"): y

Предупреждение может не отображаться, поскольку политика выполнения, возможно, уже установлена. Чтобы перепроверить настройки, вы можете запустить Get-ExecutionPolicy. Как только у вас будет правильная политика выполнения, вы будете готовы загрузить и запустить скрипт, который установит Chocolatey.

Установка Chocolatey

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

Примечание: Вам всегда будет предложено проверять исходные тексты удаленных скриптов перед их запуском, поскольку злоумышленники могут использовать этот метод.

Например, если кто-то взломает URL-адрес community.chocolatey.org/install.ps1 и заменит его вредоносным скриптом, это может привести к повреждению вашего компьютера. Поэтому будьте внимательны и убедитесь, что исходный код не был скомпрометирован.

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

PS> iwr -useb community.chocolatey.org/install.ps1 | iex

iwr это псевдоним для Invoke-WebRequest, а -useb означает использование базового синтаксического анализа, который загружает и разбирает скрипт из community.chocolatey.org/install.ps1. Результатом этого является текст скрипта, который затем передается по конвейеру (|) в iex, который является псевдонимом для Invoke-Expression, который запускает скрипт. Скрипт устанавливает Chocolatey.

После завершения установки вы сможете вызвать choco из того же приглашения. Однако команда не всегда доступна из того же приглашения после установки. В этом случае вы можете перезапустить терминал, убедившись, что он по-прежнему находится в режиме администратора для выполнения описанных в руководстве действий. Если и это не сработает, перезагрузите систему, чтобы обновить среду.

Используя шоколадный

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

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

В среде UNIX есть удобная команда sudo, которую вы можете добавить к любой команде, чтобы выполнить эту конкретную команду с повышенными привилегиями. Эта команда была бы идеальной для установки пакетов, если бы только она была доступна в Windows.

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

Однако для выполнения этого руководства не обязательно устанавливать gsudo.

Попробуйте запустить сеанс терминала с повышенными правами, а затем установите пакет по вашему выбору из онлайн-поиска пакетов. Ниже показана команда установки с помощью 7zip, файлового архиватора с открытым исходным кодом:

PS> choco install 7zip
7zip.install v22.0 [Approved]
7zip.install package files install completed. Performing other installation steps.
The package 7zip.install wants to run 'chocolateyInstall.ps1'.
Note: If you don't run this script, the installation will fail.
Note: To confirm automatically next time, use '-y' or consider:
choco feature enable -n allowGlobalConfirmation
Do you want to run the script?([Y]es/[A]ll - yes to all/[N]o/[P]rint):

В строке подтверждения введите Y и нажмите enter. После этого Chocolate установит пакет. Если вы хотите отключить функцию двойной проверки при установке пакета, вы можете отправить эту команду:

PS> choco feature enable -n allowGlobalConfirmation

Теперь в процессе установки не будет появляться раздражающий запрос Вы уверены? тип подсказок. Тем не менее, вы также можете включить этот параметр для каждой команды установки, добавив флаг -y.

Если вы хотите выполнить поиск доступных пакетов из командной строки, то вы можете сделать это с помощью команды choco search [keyword]. Чтобы просмотреть список установленных вами пакетов, вы можете использовать команду choco list с флагом --local-only. Наконец, для обновления и удаления также существуют команды choco upgrade и choco uninstall:

PS> choco upgrade [package-name]
PS> choco upgrade all # keyword to try upgrade all packages
PS> choco uninstall [package-name]

Обратите внимание, что обновление всех пакетов может занять некоторое время.

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

Разблокировка Вашего компьютера и удаление программного обеспечения

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

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

Например, производители часто включают стороннее антивирусное программное обеспечение, но не могут отключить защитник Windows. Использование нескольких антивирусных программ может вызвать странные проблемы и существенно повлиять на производительность вашего ПК. Кроме того, Windows Defender или Microsoft Defender безопасны, поэтому, если вам по какой-либо причине не нужен дополнительный антивирус, вы можете быть уверены, что встроенного антивируса достаточно для обеспечения вашей безопасности.

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

Также неизбежно, что в какой-то момент вы установите что-то, что окажется не тем, что вы хотели. Возможно, это был пакет, которого не было в Chocolatey, или вы просто забыли использовать Chocolatey. Или, к своему ужасу, вы нажали на подозрительную ссылку и установили какое-то постоянное шпионское ПО.

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

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

Bulk Crap Uninstaller или BCU - это фантастический деинсталлятор с открытым исходным кодом, который будет находить всевозможные программы и удалять их:

PS> choco install bulk-crap-uninstaller

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

A screenshot of Bulk Crap Uninstaller

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

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

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

Доступны и другие бесплатные опции, такие как Geek Uninstaller, которые, как правило, работают быстрее, если все, что вы хотите сделать, это удалить одну или две программы.

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

Некоторые программы очень трудно удалить, потому что они глубоко встроены в Windows. Если вы хотите свести к минимуму их присутствие, то вы также можете поиграть с Winaero Tweaker:

PS> choco install winaero-tweaker

Winaero Tweaker - это утилита, которая позволит вам изменить множество настроек, которые либо недоступны в приложении "Настройки", либо их очень сложно изменить. Например, он может отключить Cortana и OneDrive, если вы не собираетесь их использовать.

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

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

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

Классический интерфейс командной строки Windows связан с командной строкой, также известной как cmd.exe:

The cmd.exe Windows Command Prompt

Но времена изменились, и в наши дни вы захотите использовать PowerShell Core - кроссплатформенную объектно-ориентированную оболочку, которая может делать гораздо больше, чем командная строка.

PowerShell был разработан корпорацией Майкрософт под руководством Брюса Пайетта как мощный и относительно простой для понимания инструмент, помогающий во всех аспектах управления компьютером с Windows. Это оболочка, среда написания сценариев и инструмент автоматизации. Ее можно использовать для всего, от персональных сценариев до DevOps..

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

В Windows 10 по умолчанию установлена Windows PowerShell. Однако в более новой версии PowerShell Core этого нет. Windows PowerShell стала PowerShell Core начиная с версии 6, и именно тогда она стала кроссплатформенной оболочкой и с открытым исходным кодом для загрузки.

Поскольку PowerShell Core по умолчанию не поставляется с Windows 10, вам необходимо установить его.

Установка PowerShell Core

Теперь вы готовы к установке последней версии PowerShell Core с помощью Chocolate:

PS> choco install powershell-core

Как только это будет сделано, вы сможете вызвать pwsh, чтобы начать сеанс PowerShell Core. Если это не сработает, попробуйте команду refreshenv, а если это не сработает, перезапустите сеанс терминала:

Windows Terminal Application with PowerShell Core tab

Обратите внимание, что при обновлении PowerShell Core вам потребуется выполнить обновление из другой оболочки, например из старой Windows PowerShell, которая все еще будет доступна, или из командной строки. Попытка заменить используемое ядро PowerShell может оказаться проблематичной. Поэтому при обновлении убедитесь, что все экземпляры PowerShell Core закрыты.

Примечание: Для этого руководства вам не обязательно использовать PowerShell Core, поскольку Windows PowerShell будет работать с тем, что вы здесь рассмотрите. Тем не менее, вы вполне можете использовать последнюю, наиболее полнофункциональную версию. В конце концов, в отрасли растет спрос на навыки работы с PowerShell!

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

Знакомство с основами PowerShell

PowerShell Core обладает множеством функциональных возможностей, но вам не нужна вся эта функциональность; черт возьми, вам не нужна даже ее часть. Ниже приведены некоторые из наиболее распространенных команд для навигации по файловой системе и управления ею:

Псевдоним Полная команда PowerShell Объяснение Эквивалент Bash
ls Get-ChildItem Вывести список содержимого текущего рабочего каталога ls
cd Set-Location Измените текущий рабочий каталог cd
rm Remove-Item Удалить элемент rm
rm -recurse -fo Remove-Item -Recurse -Force Рекурсивное удаление папки rm -rf
mkdir New-Item -ItemType Directory Создать новый каталог mkdir
ni New-Item -ItemType File Создать новый файл touch
cat Get-Content Вывести содержимое файла на экран cat

Вы увидите, что это не так уж сильно отличается от типичной оболочки POSIX, подобной той, что вы найдете в системах на базе UNIX, таких как Linux или macOS.

Если вас смущает PowerShell, то эта путаница часто возникает из-за того, что PowerShell, как и Python, очень объектно-ориентирован, в то время как большинство оболочек основаны исключительно на тексте. Как только вы начнете осознавать изменения, в них появится гораздо больше смысла.

Если вам интересно узнать больше о PowerShell, Брюс Пайетт сам написал Windows PowerShell в действии. Несмотря на то, что в книге используется Windows PowerShell, она отлично подходит для общего ознакомления.

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

Настройка работы с PowerShell

Одна из задач, которую вы захотите выполнить в какой-то момент, - это настроить свой профиль PowerShell. Профиль необязателен, но это отличный инструмент, которым можно воспользоваться. Ваш профиль — это скрипт PowerShell, который вы используете для настройки среды командной строки - это PowerShell-эквивалент файла Bash .bashrc.

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

Примечание: Windows PowerShell имеет собственное расположение профиля, на которое не повлияет основной профиль PowerShell.

Во-первых, вам нужно будет создать профиль, потому что по умолчанию он не создается при установке PowerShell Core:

PS> ni -Force $PROFILE

В этой команде используется команда ni, псевдоним для New-Item. В ней используется переменная $PROFILE PowerShell, которая указывает путь, по которому PowerShell будет искать профиль. Флаг -Force используется потому, что в процессе работы PowerShell может потребоваться создать несколько каталогов.

Примечание: Переменным PowerShell предшествует знак доллара $.

После того как вы создали профиль, вы можете открыть его с помощью Блокнота Windows:

PS> notepad $PROFILE

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

# Microsoft.PowerShell_profile.ps1

Set-Alias n notepad

В этом случае n станет псевдонимом команды notepad. Итак, если вы хотите открыть блокнот, теперь вы можете просто ввести n. Обратите внимание, что любые изменения, внесенные вами в профиль, будут заметны только при следующем запуске сеанса.

Вы также можете добавить функции в свой профиль:

# Microsoft.PowerShell_profile.ps1

function grep {
  $input | out-string -stream | select-string $args
}

Если вы привыкли работать с UNIX,, grep возможно, это полезная утилита для Windows! Это способ отфильтровать множество строк вывода. Например, если вы размещаете список большого каталога и хотите отобразить только строки, содержащие определенную строку, вы можете использовать эту утилиту следующим образом:

PS> ls large-directory | grep python

Эта команда выводит список содержимого большого каталога и отображает только строки, содержащие строку python.

Примечание: Еще один перспективный менеджер пакетов, который работает несколько иначе, - это Scoop. Scoop в основном ориентирован на инструменты командной строки.

Scoop - отличный источник для портированных инструментов командной строки UNIX, таких как grep, less, cowsay, и других. Так что, если вы привыкли работать с UNIX и вам не хватает определенных инструментов командной строки, Scoop стоит посмотреть.

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

Знакомство с модулями PowerShell

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

  • Определение местоположения: Этот модуль помогает вам очень быстро перемещаться по часто используемым папкам.
  • О, моя прелесть: Этот модуль позволяет легко настроить ваше приглашение PowerShell так, чтобы оно выглядело великолепно, а также добавить множество дополнительных функций.
  • PSFzf: Этот модуль использует возможности утилиты поиска fzf внутри PowerShell. Сначала вам необходимо установить fzf, что можно сделать с помощью choco install fzf.
  • posh-git: Этот модуль позволяет дополнительно настраивать ваше приглашение, но, что особенно важно, завершение ввода в вашем Команды Git.

Вы можете установить эти модули с помощью команды Install-Module, хотя каждая из ссылок будет содержать дополнительную информацию о том, как их правильно установить и настроить.

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

Настройка переменных среды

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

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

Обнаружение переменных среды с помощью PowerShell

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

Чтобы просмотреть все переменные среды, доступные для текущего сеанса PowerShell, вы можете перейти к псевдодиску с именем ENV, как если бы это был диск типа C или D:

PS> cd ENV:
PS> pwd # alias for Get-Location

Path
----
Env:\

PS> ls

Name                           Value
----                           -----
ALLUSERSPROFILE                C:\ProgramData
ANSICON                        166x32766 (166x66)
ANSICON_DEF                    7
APPDATA                        C:\Users\RealPython\AppData\Roaming
AZ_ENABLED                     False
ChocolateyInstall              C:\ProgramData\chocolatey
...

После перехода к псевдодиску ENV: вы можете вызвать ls, чтобы получить список всех переменных среды, доступных для текущего сеанса PowerShell.

Примечание: PowerShell, как и Windows в целом, не чувствителен к регистру. Таким образом, путь или переменная типа $PROFILE также могут быть доступны с помощью $profile. ENV могут быть доступны с помощью env. Это также справедливо для имен файлов и путей.

Также имеется Графический интерфейс пользователя (GUI) панель управления переменными среды, к которой вы перейдете позже в этом разделе.

Переменные среды отличаются от переменных типа $PROFILE тем, что переменные среды обычно доступны для всех программ в вашем пользовательском пространстве, в то время как $PROFILE - это Переменная только для PowerShell.

Переменная Env:Path особенно подвержена легким ошибкам и может вызвать разочарование, если вы не понимаете, что происходит.

Понимание Path Переменной окружения

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

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

Например, Chocolatey добавляет каталог в Path, куда помещаются исполняемые файлы, которые вы, возможно, захотите вызвать из командной строки. Каталог, который он добавляет в переменную окружения Path, называется C:\ProgramData\chocolatey\bin, и в этом каталоге вы, по крайней мере, найдете choco.exe. При таком наборе, когда вы вызываете choco из командной строки, Windows будет искать по каждому пути в переменной окружения Path папку, содержащую исполняемый файл choco.

Чтобы узнать, какие пути указаны в вашей переменной Path, из PowerShell вы можете вызвать следующую команду:

PS> (cat ENV:Path) -Split ";"

cat это псевдоним для Get-Content, который возвращает строковый объект, содержащий содержимое переменной Path. Вы можете заключить этот объект в квадратные скобки и вызвать оператор -Split, чтобы увидеть каждый путь в отдельной строке.

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

Примечание: Обратите внимание на наличие нескольких возможных вариантов для любого данного исполняемого файла в Path. Если, например, у вас было python.exe в двух разных местах в Path, то первым всегда будет запускаться .

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

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

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

Откройте меню "Пуск" и найдите "Изменить системные переменные среды", после чего откроется окно "Свойства системы". На вкладке Дополнительно нажмите на кнопку Переменные среды. Там вы увидите Пользовательские и Системные переменные, которые вы сможете редактировать:

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

Вы также можете задать переменные среды из приглашения PowerShell с повышенными правами, используя Методы .NET API, например:

PS> [Environment]::SetEnvironmentVariable("TEST", "VALUE", "User")

Эта команда устанавливает переменную окружения с ключом "TEST", значение которой равно "VALUE", а область действия - "User". Область действия может быть "User", "Process" или "Machine". Вы можете использовать "Machine", если хотите, чтобы переменная окружения была доступна всем пользователям, в то время как "User" предназначена только для текущего пользователя. Область "Process" устанавливает переменную только для текущего сеанса PowerShell и дочерних процессов сеанса.

Вы можете создать временные переменные среды с помощью pure PowerShell, используя следующую команду:

PS> $ENV:TEST = "VALUE"

Но программа, не связанная с вашим сеансом PowerShell, не будет иметь доступа к этой переменной. Более того, если вы не добавите эту инструкцию в свой профиль, она будет недоступна в следующем сеансе PowerShell.

Если вам нужно изменить переменную Path, следует иметь в виду еще несколько моментов.

Изменение переменной окружения Path

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

Как правило, если вы собираетесь делать это из PowerShell в качестве временной переменной среды, вам нужно будет добавить новое значение с помощью объединения строк:

PS> $env:Path = "$env:Path;C:\new\path"

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

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

PS> refreshenv

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

Теперь, когда вы знаете, как выполнять некоторые Path действия по устранению неполадок, и относительно освоились с новой настройкой командной строки, пришло время установить Python с pyenv для Windows.

Настройка основного программного обеспечения для программирования на Python в Windows

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

Установка Python с помощью pyenv для Windows

pyenv для Windows - это порт оригинального pyenv, который работает только в системах на базе UNIX. Версия для Windows не так полнофункциональна, как версия для UNIX, но она по-прежнему полностью функциональна.

С Chocolatey установка pyenv для Windows ничем не отличается от установки любого другого пакета:

PS> choco install pyenv-win

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

PS> pyenv update
:: [Info] :: Mirror: https://www.python.org/ftp/python
:: [Info] :: Scanned 172 pages and found 563 installers.
PS> pyenv install --quiet 3.10.5 3.9.12
:: [Info] :: Mirror: https://www.python.org/ftp/python
:: [Downloading] :: 3.10.5 ...
...
:: [Installing] :: 3.10.5 ...
:: [Downloading] :: 3.9.12 ...
...
:: [Installing] :: 3.9.12 ...

Команда install установит две версии Python без вашего вмешательства вручную из-за флага --quiet.

Вы можете использовать команду pyenv global для переключения между версиями Python, а затем проверить версию Python, которая активна, с флагом версии -V:

PS> pyenv global 3.10.5
PS> python -V
Python 3.10.5
PS> pyenv global 3.9.12
PS> python -V
Python 3.9.12

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

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

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

Или вы можете создать виртуальную среду с активной версией:

PS> pyenv global 3.9.12
PS> python -V
Python 3.9.12
PS> python -m venv venv

PS> pyenv global 3.10.5
PS> python -V
Python 3.10.5

PS> ./venv/Scripts/activate
(venv) PS> python -V
Python 3.9.12

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

Для получения более подробной информации о pyenv ознакомьтесь с специальным руководством по нему. Просто обратите внимание, что, поскольку это руководство предназначено для версии UNIX, некоторые функции могут работать не так, как в Windows. В таких случаях ознакомьтесь с репозиторием pyenv для Windows.

Теперь, когда у вас есть Python, вам понадобится способ совместной работы с другими программистами.

Установка Git в Windows

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

Git работает с репозиториями. Репозиторий - это, по сути, папка с отслеживаемой историей. GitHub - это веб-сайт, который позволяет вам размещать свои репозитории. Как только репозиторий будет размещен, многие пользователи смогут работать над проектом одновременно и из любого места. Вы можете работать в автономном режиме, а затем выполнить синхронизацию с основным репозиторием, как только подключитесь к Интернету.

Git легко установить с помощью Chocolatey:

PS> choco install git

Вот и все! Теперь вы сможете вызвать git из командной строки PowerShell. Если это не сработает и вы получите сообщение о том, что эта команда не может быть распознана, попробуйте refreshenv. Если это не удастся, вы можете прибегнуть к перезапуску сеанса PowerShell или просто перезагрузить компьютер.

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

PS> git config --global user.name "John Doe"
PS> git config --global user.email john.doe@domain.com

Тем не менее, если вы попытаетесь выполнить фиксацию, Git предложит вам добавить эту информацию, которая создаст файл .gitconfig.

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

Использование SSH для подключения к GitHub

Подключиться к GitHub можно с помощью SSH или Защищенной оболочки. Для этого вам потребуется создать несколько SSH-ключей. В процессе, описанном в этом разделе, будут сгенерированы два ключа, закрытый и общедоступный. Вы загрузите открытый ключ в свою учетную запись на GitHub.

Откройте сеанс PowerShell и убедитесь, что у вас есть Open-SSH, который должен был быть установлен по умолчанию:

PS> ssh
usage: ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-B bind_interface]
           [-b bind_address] [-c cipher_spec] [-D [bind_address:]port]
           [-E log_file] [-e escape_char] [-F configfile] [-I pkcs11]
           [-i identity_file] [-J [user@]host[:port]] [-L address]
           [-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port]
           [-Q query_option] [-R address] [-S ctl_path] [-W host:port]
           [-w local_tun[:remote_tun]] destination [command]

Если вы не видите аналогичного вывода, следуйте инструкциям в документации для Windows, чтобы установить Open-SSH. Вы также можете установить его из пакета Chocolatey.

Сначала вы создадите свои ключи с помощью ssh-keygen, нажимая enter в каждом приглашении, чтобы использовать параметр по умолчанию:

PS> ssh-keygen -C john.doe@domain.com
Generating public/private rsa key pair.
Enter file in which to save the key (C:\Users\Real Python/.ssh.id_rsa):
Created directory 'c:\Users|Real Python/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in C:\Users\Real Python/.ssh/id_rsa.
Your public key has been saved in C:\Users\Real Python/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa jondoe@domain.com
The key's randomart image is:
+---[RSA 3072]----+
| E+===+*++.o.    |
|..=+=o+O+ o.o    |
|o+o++.B.o oo     |
|o+o*oo o o .     |
| o+o.   S .      |
|  o              |
|                 |
|                 |
|                 |
+----[SHA256]-----+

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

PS> cat ~/.ssh/id_rsa.pub

Результат выполнения этой последней команды cat - это то, что вам нужно скопировать в свою учетную запись на GitHub.

Чтобы скопировать ключ в свою учетную запись на GitHub, вы сначала должны убедиться, что вы зарегистрировали учетную запись. После того, как вы зарегистрировались и вошли в систему, если вы зайдете в свои настройки на GitHub, вы должны найти опцию управлять своими SSH-ключами и ключами GPG. Оказавшись там, вы сможете увидеть, куда вставить свой SSH-ключ.

После этого вы можете протестировать подключение:

PS> ssh -T git@github.com
Hi John Doe! You've successfully authenticated, but GitHub doesn't provide shell access.

Если вы получите это сообщение об успешной аутентификации, значит, вы готовы к работе с GitHub из командной строки.

Теперь, когда Git запущен, пришло время настроить редактор кода.

Настройка VS Code

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

Вы можете установить VS Code с помощью Chocolatey:

PS> choco install vscode

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

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

Чтобы установить расширение, щелкните значок расширения на панели действий:

The Extensions button in VS Code

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

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

Еще одним расширением, если вы планируете использовать WSL, является WSL connector, которое позволит вам редактировать файлы так, как если бы вы работали в Linux.

Также стоит настроить Синхронизацию настроек, поскольку это свяжет ваши настройки VS Code и список расширений с вашей учетной записью на GitHub или Microsoft, позаботившись о резервном копировании и ускорив настройку перешел на новую машину.

Настроив VS Code, вы готовы протестировать свою установку, чтобы убедиться, что она работает.

Тестирование Вашей Установки

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

В следующем фрагменте вы протестируете создание папки, создание виртуальной среды, установку пакета, инициализацию репозитория Git и убедитесь, что VS Code интегрируется с этой настройкой:

PS> mkdir test

    Directory: C:\Users\RealPython

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d----            27/06/22    18:19                test

PS> cd test
PS> pyenv versions
* 3.10.5 (set by C:\Users\RealPython\.pyenv\pyenv-win\version)
  3.9.12

PS> python -m venv venv
PS> .\venv\Scripts\activate
(venv) PS> python -m pip install requests
Collecting requests
...
Successfully installed certifi charset-normalizer idna requests urllib3

(venv) PS> git init
Initialized empty Git repository in C:/Users/RealPython/test/.git/

(venv) PS> ni test.py

    Directory: C:\Users\RealPython\test

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a---            27/06/22    18:25              0 test.py

(venv) PS> code .

Теперь, когда VS Code открыт, в правом нижнем углу вы сможете увидеть, в какой среде Python вы находитесь:

Если он не отображается venv и IntelliSense не работает, то вы можете вызвать командную палитру с помощью Ctrl+Shift+P и выполните поиск команды Python: выберите интерпретатор. Выберите параметр, указывающий на путь к вашей виртуальной среде. Если выбрана виртуальная среда, VS Code должен отображаться в нижней части вашего окна VS Code в виде 3.10.5 (‘venv’:venv).

Вы также должны увидеть, как работает интеграция с Git в VS Code. Если вы измените файл или добавите новый, вы увидите признаки этого изменения в окне редактора и проводнике файлов.

Молодец! Теперь у вас есть мощная и гибкая установка в Windows. Хотя использование менеджера пакетов намного эффективнее, чем загрузка и выполнение установщиков вручную, возможно, вы ищете еще более быстрый способ.

Быстрое отслеживание настройки кода на Python для Windows

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

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

Хранилище конфигурации

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

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

Здесь вы можете сохранить свой профиль PowerShell, файлы конфигурации Git, другие файлы конфигурации, а также любые скрипты или заметки, которые могут вам понадобиться. Если у вас есть файлы, размещенные на GitHub, вы можете получить необработанные ссылки на них и использовать PowerShell для их загрузки:

The "Raw" button on a GitHub file

Чтобы получить ссылку raw, перейдите к файлу, который вы хотите использовать, в GitHub, и когда вы посмотрите на содержимое файла, вы увидите кнопку с надписью Raw. Эта кнопка приведет вас к URL-адресу, который выглядит примерно так:

https://raw.githubusercontent.com/[USER]/[REPO]/[COMMIT_SHA_OR_BRANCH]/path/to/file

Теперь вы можете использовать этот URL для загрузки содержимого и запуска его с вашего нового компьютера. Вы также можете размещать отдельные файлы с помощью GitHub Gist.

Чтобы сделать еще один шаг вперед и избежать необходимости вводить ссылку целиком, вы можете передать ее с помощью средства сокращения URL, такого как bitly, что сократит ссылку:

https://bit.ly/xxxxxxx

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

PS> Set-ExecutionPolicy RemoteSigned -Force
PS> iwr -useb bit.ly/xxxxxxx | iex

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

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

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

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

  1. Настройка политики выполнения следующим образом RemoteSigned
  2. Отключение псевдонимов выполнения приложений, связанных с Python

Выполнив эти две задачи, вы почти готовы развернуть раскрывающееся поле ниже и запустить скрипт:

# setup.ps1

Write-Output "Downloading and installing Chocolatey"
Invoke-WebRequest -useb community.chocolatey.org/install.ps1 | Invoke-Expression

Write-Output "Configuring Chocolatey"
choco feature enable -n allowGlobalConfirmation

Write-Output "Installing Chocolatey Packages"
choco install powershell-core
choco install vscode
choco install git --package-parameters="/NoAutoCrlf /NoShellIntegration"
choco install pyenv-win

# The Google Chrome package often gets out of sync because it updates so
# frequently. Ignoring checksums is a way to force install it.
choco install googlechrome --ignore-checksums
# Google Chrome auto-updates so you can pin it to prevent Chocolatey from
# trying to upgrade it and inadvertently downgrading it.
# You could also add VS Code here if you like.
choco pin add -n googlechrome

refreshenv

# The refreshenv command usually doesn't work on first install.
# This is a way to make sure that the Path gets updated for the following
# operations that require Path to be refreshed.
# Source: https://stackoverflow.com/a/22670892/10445017
foreach ($level in "Machine", "User") {
    [Environment]::GetEnvironmentVariables($level).GetEnumerator() |
    ForEach-Object {
        if ($_.Name -match 'Path$') {
            $combined_path = (Get-Content "Env:$($_.Name)") + ";$($_.Value)"
            $_.Value = (
                ($combined_path -split ';' | Select-Object -unique) -join ';'
            )
        }
        $_
    } | Set-Content -Path { "Env:$($_.Name)" }
}

Write-Output "Setting up pyenv and installing Python"
pyenv update
pyenv install --quiet 3.10.5 3.9.12
pyenv global 3.10.5

Write-Output "Generating SSH key"
ssh-keygen -C john.doe@domain.com -P '""' -f "$HOME/.ssh/id_rsa"
cat $HOME/.ssh/id_rsa.pub | clip

Write-Output "Your SSH key has been copied to the clipboard"

Этот скрипт попытается установить Chocolatey, установит ключевое программное обеспечение, упомянутое в этом руководстве, установит пару версий Python с помощью pyenv, сгенерирует ваш SSH-ключ и предоставит его вам, чтобы вы могли перейти на GitHub и добавить его в свою учетную запись.

Если вы собираетесь его использовать, обязательно настройте программное обеспечение, которое вы хотите установить, и укажите свой адрес электронной почты в строке ssh-keygen.

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

PS> Set-ExecutionPolicy RemoteSigned -Force
PS> iwr -useb bit.ly/xxxxxxx | iex

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

Заключение

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

В этом руководстве вы успешно:

  • Очищен и обновлен новая установка Windows
  • Используется Chocolatey для массовой установки ключевого программного обеспечения
  • Использовал встроенный ssh-keygen для генерации SSH-ключей и подключения к вашей учетной записи на GitHub
  • Настройка среды разработки, включающей Ядро PowerShell, pyenv для Windows, Python и VS Code
  • Написал скрипт, чтобы максимально автоматизировать процесс.

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

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

Другое отличное программное обеспечение для Windows

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

  • Everything: Отличная поисковая утилита, использующая инструменты индексации файлов, доступные только для Windows. Ее можно использовать как обычный поиск файлов и средство запуска приложений. Это быстро!
  • Подсистема Windows для Linux: Если вы хотите практически полностью использовать Linux в Windows, ознакомьтесь с WSL. Это не шоколадная упаковка.
  • Autohotkey: Простой в использовании и чрезвычайно популярный инструмент автоматизации только для Windows. Некоторые люди используют Windows только ради удовольствия!

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

Back to Top