Сохранение, загрузка и повторный вызов работы в окне Python

Сохранение работы

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

Содержимое окна Python можно сохранить в файл Python или текстовом файе. Щелкните окно Python правой кнопкой мыши и выберите Сохранить как (Save As), чтобы сохранить код либо в файл Python (.py), либо в текстовый файл (.txt). При сохранении в файл Python можно сохранить только код. При сохранении в текстовом файле все содержимое окна Python, включая код, возвращаемые сообщения и командную строку (>>>), будет записано в выходной файл.

Сохранить как в окне Python

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

Загрузка в окно Python

Окно Python является интерактивным интерпретатором, который удобен для быстрого выполнения инструментов геообработки или других команд Python. Однако код, который уже был написан и сохранен в автономный скрипт или в файл Python, также можно загрузить в окно Python, изменить и выполнить. Ниже показан простой скрипт, который просматривает класс объектов и поле и создает уникальный список значений поля. Это достаточно простой пример, но ввод вручную всех 13 его строк в окно Python может занять продолжительное время. Вместо этого щелкните правой кнопкой в окне Python и выберите Загрузить (Load). Выбранный вами код (сохраненный в автономном скрипте или как файл Python) будет немедленно загружен в окно Python. После загрузки в окно Python можно отредактировать положение класса объектов, имя поля или синтаксис, затем выполнить код, поместив курсор в конце кода и нажав клавишу ENTER.

Создает список уникальных значений поля на основе класса объектов и имени поля.

import arcpy
featureclass = "C:/data/county.gdb/hospital"
field = "Zip"

valueList = []
rows = arcpy.da.SearchCursor(featureclass, [field])
for row in rows:
    valueList.append(row[0])

uniqueSet = set(valueList)
uniqueList = list(uniqueSet)
uniqueList.sort()

print(uniqueList)

Повторный вызов кода Python

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

5/10/2014