Python в ArcGIS Pro
Язык Python является независимым, межплатформенным, открытым языком программирования. Он широко используется и поддерживается. Более подробно о Python вы узнаете, посетив веб-сайт Python.
ArcGIS Pro использует Python 3. Python 3 - это популярный язык программирования, который используется в различных областях, включая анализ данных, науку о данных, обеспечение качества, а также разработку веб-сайтов и программного обеспечения. Кроме того, ArcGIS Pro по умолчанию включает множество сторонних модулей Python.
Изучение Python
Помимо справки к ArcGIS Pro Python, вам могут оказаться полезными уроки Изучение Python в ArcGIS Pro в ArcGIS Learn и книги издательства Esri Press за авторством Paul A. Zandbergen, независимо от вашего уровня подготовки:
Для получения дополнительной информации о ArcPy, рекомендуем обратиться к руководству по языку Python, входящим в комплект поставки. Существует большое количество книг по Python и его применению, новая литература по этому языку выходит регулярно, так что изучите доступные. На сайте Python вы найдете полную документацию по Python, к сожалению она является довольно краткой и ориентированной на разработчиков. Существует большое онлайн-сообщество Python с множеством онлайн-ресурсов, доступных с главной страницы Python.
Уроки по Python
Если вы новичок в Python, рекомендуем следующие внешние уроки:
Учебник по Python доступен в документации по Python.
Python для не программистов содержит руководство по работе, ориентированное на пользователей с небольшим опытом программирования.
Справочник по языку Python описывает синтаксис и семантику языка Python.
Учебники по Python для программистов
Следующие внешние учебные материалы предназначены для пользователей, имеющих опыт программирования:
Учебник по Python доступен в документации по Python.
Python для программистов содержит руководство по работе, ориентированное на пользователей с опытом программирования на других языках.
Conda
Python является основным языком автоматизации в ArcGIS Pro, во многом благодаря его универсальности и расширяемости. Отчасти благодаря этим качествам Python становится одним из самых широко используемых языков программирования в целом. В Python есть множество готовых пакетов, которые можно использовать в ArcGIS. Однако принятие решения о том, какие из них следует установить, может оказаться непростой задачей, для решения которой требуется время, особенно при работе над несколькими проектами или при попытке поделиться кодом с коллегами.
Используя эту универсальность, сообщество Python создало методы создания проектов на различных версиях Python и упрощает процесс установки почти всех публично доступных пакетов Python. Conda - популярный и широко используемый менеджер пакетов на Python.
Функциональность conda интегрирована в ArcGIS Pro через страницу Package Manager. Менеджер пакетов устраняет многие сложности при написании кода на Python. Он поддерживает установку открытых и сторонних библиотек, связанных с отдельным проектом, а не с базовой установкой на Python. Это упрощает процесс успешного совместного обмена сложными инструментами Python между несколькими компьютерами.
Запуск Python
Вы можете запускать Python интерактивно в ArcGIS Pro, используя окно Python или ArcGIS Notebooks. Окно Python предоставляет строку, из которой можно запускать небольшие примеры кода Python. ArcGIS Notebooks основана на архитектуре Jupyter Notebook и предлагает опыт, в котором код, визуализации и повествовательный текст можно запускать и хранить вместе в одном документе.
Вы можете запускать скрипты на Python (файлы с .py расширением) вне ArcGIS Pro. Подразделы, приведенные ниже, описывают способы запуска скриптов Python вне приложения с корректным активированным параметром среды ArcGIS Pro Python 3 conda.
Запуск из командной строки
Чтобы запустить Python из командной строки, выполните следующее:
"%PROGRAMFILES%\ArcGIS\Pro\bin\Python\Scripts\propy"
Примечание:
Все показанные пути предполагают установку ArcGIS Pro для каждой машины (для всех пользователей). Если ArcGIS Pro был установлен для текущего пользователя, замените %LOCALAPPDATA% для %PROGRAMFILES%.
Чтобы запустить скрипт на Python из командной строки (аргументы можно добавлять после расширения .py), введите следующее:
"C:\Program Files\ArcGIS\Pro\bin\Python\Scripts\propy" myscript.py
Запустите среду ArcGIS Pro Python 3 conda:
"%PROGRAMFILES%\ArcGIS\Pro\bin\Python\Scripts\proenv"
Запуск из пакетного файла
Чтобы запустить скрипт Python из файла .bat, используйте call на propy:
@echo Run my Python script
call "%PROGRAMFILES%\ArcGIS\Pro\bin\Python\Scripts\propy" myscript.py
@echo Finished
Запуск задачи по расписанию
При запуске скрипта Python в качестве задачи по расписанию, используйте C:\PROGRA~1\ArcGIS\Pro\bin\Python\Scripts\propy для программы или скрипта и включите полный путь к скрипту Python во всех аргументах.
Клавиши быстрого доступа
Используйте следующие клавиши для быстрого доступа к Python:
|
Клавиши быстрого доступа |
Описание |
|---|---|
|
Командная строка Python |
Открывает окно командной строки, инициализированной с текущей средой conda. Для запуска интерактивного сеанса Python введите python. Чтобы запустить скрипт Python, введите python и путь к файлу |
|
Python Interactive Terminal |
Открывает сессию Python с текущей средой conda. |
Python IDE
Большинство современных интегрированных сред разработки (IDE) можно легко использовать с conda, настроив версию Python, которую использует IDE. Первый шаг включает настройку IDE на использование правильного файла Python.exe в рамках установки ArcGIS Pro. Для настройки нескольких общих IDE, см. раздел Использование IDE документации conda или документацию соответствующей IDE.
Вы можете запустить Python IDLE из среды Conda, введя в режим idle.
Перенос
Если вы мигрируете код на Python, написанный на версию ArcGIS Desktop (или ArcGIS Server, или ArcGIS Engine), см. миграция Python с 10.x на ArcGIS Pro. Основные отличия в том, что ArcGIS Pro использует Python 3, а другие продукты ArcGIS — Python 2, а ArcPy имеет некоторые отличия в используемых инструментах. Например, модуль arcpy.mapping заменен на модуль arcpy.mp.
Решение проблем
ArcPy должен запускаться внутри среды Conda, которую ArcGIS Pro использует для управления установкой Python. Чтобы получить доступ к этой среде, откройте Python по ссылкам в группе меню Пуск или запустите proenv в терминале.
Если среда conda открыта в командном окне без прав администратора, появится сообщение о том, что у вас недостаточно прав. Закройте командное окно, заново откройте его от имени администратора.
Авторизация Python вне приложения
При запуске скриптов Python, использующих функциональность ArcGIS Pro вне приложения ArcGIS Pro, таких как Python IDE, из командной строки или при запуске скриптов через запланированные задачи, должно соблюдаться одно из следующих условий:
Войти в систему автоматически проверяется при входе в ArcGIS Pro.
ArcGIS Pro открыто в настоящий момент.
ArcGIS Pro был авторизован для автономной работы.
Примечание:
Если ни одно из вышеперечисленных условий не выполняется, при импорте arcpy или arcgisscripting возникнет исключение RuntimeError: NotInitialized.
Более подробно о лицензировании ArcGIS Pro