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

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

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

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

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

Примечание:

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

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

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

c:\python27\ArcGIS10.7\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. Активирует среду conda для ArcGIS Pro
      2. Запускает Python
      3. Запускает указанный скрипт
      4. Выходит из Python и среды
    • Если вы можете вызвать propy.bat без аргумента, среда conda будет активирована, а Python будет запущен в режиме интерактивного окна (REPL).
  • proenv.bat – активирует среду ArcGIS Pro и открывает окно командной строки Windows. Здесь вы можете вызвать 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). Обратитесь к предыдущим вопросам, относящимся к административным правам доступа.

Связанные разделы


В этом разделе
  1. Вопросы и ответы