Опубликовано пользователем в категории По-русски.

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

На прошлой неделе стало доступно обновление ArcGIS 10.1 для включения фоновой геообработки в 64-битном режиме. Было получено несколько вопросов от пользователей, активно использующих Python, которые хотели избавиться от необходимости запускать приложение, чтобы использовать скрипты для обработки данных в 64-битном режиме.
Если вам интересна такая возможность, то единственное, что потребуется сделать, это убедиться что вы используете 64-битную версию Python. На этом настройка заканчивается.

При включении поддержки 64-битной фоновой геообработки устанавливается 64-битная версия Python 2.7.2, NumPy и Matplotlib, если они еще не были установлены. По умолчанию, они будут установлены в папку C:\Python27\ArcGISx6410.1 (обратите внимание на x64 в строке пути). Папка отличается от 32-битной версии Python (C:\Python27\ArcGIS10.1), которая устанавливается и используется в настольных приложениях и в Engine.

Обратите внимание: Если у вас установлен ArcGIS for Server 10.1, при установке поддержки 64-битной фоновой геообработки будет использовано расположение, в которое 64-битная версия Python была установлена во время установки ArCGIS for Server.

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

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

Следующий скрипт, “Intersect_Dissolve.py” запускается в 64-битной версии, с помощью указания установки Python в командной строке (c:\Python27\ArcGISx6410.1\python.exe).

Запуск скрипта с помощью командной строки
©Esri

Текст в командной строке запускает следующий код python:

import arcpy
import sys

print «Running against: {}».format(sys.version)
print «Intersecting parcels…»
arcpy.Intersect_analysis(["C:/Demos/Parcels/data.gdb/parcels",
"C:/Demos/Parcels/data.gdb/landRecords"],
«C:/Demos/Parcels/scratch/out.gdb/int_out»,
«ALL», «», «INPUT»)
#…continued script..

Дополнительные модули Python
Если в скриптах Python используются дополнительные модули (которые не входят в стандартную установку Python, NumPy или Matplotlib), потребуется скачать и установить из 64-битную версию. Вне зависимости от того, используется ли настольное приложение или скрипт запускается из командной строки, необходимо убедиться, что необходимый модуль установлен и готов к использованию. Например, если скрипт использует популярную библиотеку SciPy, скорее всего у вас уже установлена 32-битная версия. Необходимо скачать и установить 64-битную версию SciPy для успешного запуска скрипта при использовании 64-битной обработки в настольных приложениях или в скриптах Python. Если скрипты используются широкой аудиторией и вы не уверены, что у пользователей установлены 64-битные версии необходимых модулей, вы можете отключить фоновую обработку, установкой отметки Всегда выполнять не в фоновом режиме (Always run in foreground) на вкладке Общие (General) свойств инструмента, чтобы инструмент запускался в 32-битной версии Python.

Удачи в написании скриптов для 64-битной версии Python!

Теги:


Комментирование завершено.