Skip to main content

Запуск автономных скриптов

ArcGIS Pro включает в себя стандартный Python на основе conda, доступный только для чтения. Этот Python используется в ArcGIS Pro и является тем самым Python, который вы используете для запуска автономных скриптов.

Эта среда conda по умолчанию, arcgispro-py3, использует все библиотеки Python, применяемые ArcGIS Pro, а также несколько других, например scipy и pandas. Существуют несколько ярлыков для быстрого доступа к этой среде, включая ярлык Python Command Prompt, который открывает командную строку, инициализируемую средой arcgispro-py3.

Для получения подробной информации о Python в приложении ArcGIS Pro см. Package Manager.

Вопросы и ответы

Примечание:

Во всех вопросах данного раздела подразумевается, что ArcGIS Pro установлен в c:\Program Files\ArcGIS. Для установки для конкретного пользователя или установки в другое местоположение обновите путь.

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

В других продуктах ArcGIS скрипт Python запускается из командной строки:

c:\python27\ArcGIS10.8\python.exe my_script.py

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

c:\Progra~1\ArcGIS\Pro\bin\Python\scripts\propy.bat my_script.py

Здесь propy.bat используется в качестве замены при вызове python.exe.

Надо ли мне активировать среду conda для запуска автономного скрипта?

Нет, вы можете воспользоваться файлом python.exe в папке c:\Program Files\ArcGIS\Pro\bin\Python\envs\arcgispro-py3 для запуска своих скриптов. Вы также можете вызвать c:\Progra~1\ArcGIS\Pro\bin\Python\scripts\propy.bat, как было упомянуто ранее.

Зачем мне использовать propy.bat?

При работе с проектом ArcGIS Pro вы можете создавать и использовать новую среду conda с определенными наборами и версиями библиотек Python. Например, при запуске автономных скриптов, если вы запускаете c:\Progra~1\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\python.exe (среда conda по умолчанию для ArcGIS Pro), у вас не обязательно будет тот же набор пакетов, который вы используете в приложении ArcGIS Pro. Вот почему вы используете propy.bat: он определяет активную среду conda приложения и активирует ее в вашем автономном скрипте.

Какая разница между propy.bat и proenv.bat?

Эти различия перечислены ниже:

  • propy.bat– это замена для python.exe. Он активирует среду conda в ArcGIS Pro arcgispro-py3 и запускает Python. Вы можете вызвать propy.bat с помощью или без помощи файла Python в качестве аргумента.

    • Используя скрипт в качестве аргумента, propy.bat выполняет следующее:

      1. Активация среды ArcGIS Pro conda

      2. Запускает Python

      3. Запускает указанный скрипт

      4. Выходит из Python и среды

    • Если вы можете вызвать propy.bat без аргумента, среда conda будет активирована, а Python будет запущен в режиме интерактивного окна (REPL).

  • proenv.bat—Активирует среду ArcGIS Pro и открывает окно командной строки. Далее можно вызвать arcgispro-py3\python.exe, введя Python, чтобы начать интерактивную сессию терминала, или ввести python с именем скрипта, который хотите запустить.

Требуются ли права администратора для установки пакетов conda?

Нет. Начиная с ArcGIS Pro 2.2 среда arcgispro-py3 по умолчанию не может изменяться с помощью Менеджера пакетов ArcGIS Pro даже при запуске ArcGIS Pro с правами администратора. Чтобы установить пакеты conda, вы можете создать среду с помощью Менеджера пакетов ArcGIS Pro или утилит командной строки conda.

Примечание:

Среду arcgispro-py3 по умолчанию можно изменить с помощью утилит командной строки conda, однако обычно это не рекомендуется. Для изменения среды arcgispro-py3 на каждой машине установки ArcGIS Pro требуются права администратора.

Когда я запускаю окно командной строки Python, почему я получаю ошибку Доступ запрещен?

Вы не можете использовать команды conda для изменения сред или пакетов conda. Однако это не влияет на ваше использование Python (включая proenv.bat и propy.bat). Обратитесь к предыдущим вопросам, относящимся к административным правам доступа.