Выполнение и отладка скриптов Python
Эти шаги построены на основе скрипта, созданного в разделе Создание нового скрипта Python.
- Нажмите кнопку Проверить (Check) на панели инструментов PythonWin Стандартные (Standard) для проверки скрипта на наличие синтаксических ошибок и ошибок отступа. В случае нахождения ошибки курсор будет помещен в соответствующее место. Исправьте синтаксис и проверьте его заново до тех пор, пока не останется ни одной ошибки.
- Нажмите кнопку Запустить (Run) , чтобы открыть диалоговое окно Запустить скрипт (Run Script).
- Введите параметры, которые необходимы для скрипта: входная рабочая область, класс пространственных объектов вырезания, выходная рабочая область и допуск XY. Можно указать собственные данные либо воспользоваться учебными. В таблице внизу показаны учебные данные, которыми можно воспользоваться. Так как пути к данным содержат пробелы, заключите весь путь в кавычки при использовании его в качестве параметра.
- В качестве опции отладки выберите Пошаговый переход в отладчике (Step-through in the debugger) и нажмите кнопку OK.
- Нажмите кнопку Шаг вперед (Step Over). . Будет выполнена текущая строка кода, которая импортирует все указанные модули, после чего будет выполнено перемещение на следующую строку.
- Шаг (Step): выполняет текущую строку и ожидает на следующей.
- Шаг вперед (Step Over): выполняет текущую строку. Если строка содержит вызов модуля, функции или метода Python, выполняются соответствующие модуль, функция или метод.
- Возврат на шаг (Step Out): при нахождении внутри модуля, функции или метода выполняется их код, а отладчик возвращается к коду, который следует за модулем, функцией или методом.
- Нажмите несколько раз кнопку Шаг вперед (Step Over), чтобы достичь инструкции try.
- В окне Стек (Stack) щелкните узел _main_module.
- Щелкните узел Locals (Dict) для отображения всех локальных переменных и их значений.
- Нажмите несколько раз кнопку Шаг вперед (Step Over), чтобы переместить курсор к инструкции while. Три выполненных строки создадут список доступных классов пространственных объектов и заполнят переменную fc первым именем.
- В окне Просмотр (Watch) щелкните <Новый элемент> (<New Item>) и введите "fc". Нажмите клавишу ВВОД, чтобы заменить выражение на имя переменной. Теперь вы увидите значение переменной.
- Нажмите несколько раз кнопку Шаг вперед (Step Over), чтобы задать выходную рабочую область и перейти к инструкции if.
- Нажмите несколько раз кнопку Шаг вперед (Step Over), чтобы переместиться в блок кода инструкции if, где будет выполнен инструмент Вырезание (Clip).
- Нажмите дважды кнопку Шаг вперед (Step Over), чтобы выполнить инструмент и извлечь следующее имя класса пространственных объектов из перечисления имен классов пространственных объектов. Обратите внимание на значение переменной fc в окне Просмотр (Watch).
- Нажмите кнопки окон Просмотр (Watch) и Стек (Stack) на панели инструментов Отладка (Debugging), чтобы закрыть их.
- Нажмите кнопку окна Интерактивность (Interactive) . Добавьте следующий код и нажмите клавишу ВВОД:
- Нажмите кнопку Закрыть (Close). на панели инструментов Отладка (Debugging), чтобы остановить выполнение скрипта.
Путь (Path) | Вручную редактируя и фиксируя пространственный объект с ошибками геометрии. |
---|---|
"C:\ArcGIS\ArcTutor\GP Service Examples\DriveTimePolygons\ToolData\SanFrancisco.gdb\Transportation" | Входная рабочая область |
"D:\ArcGIS\ArcTutor\GP Service Examples\DriveTimePolygons\ToolData\SanFrancisco.gdb\BaseMap\Parks" | Класс пространственных объектов вырезания |
"D:\ArcGIS\ArcTutor\GP Service Examples\DriveTimePolygons\Scratch\Scratch.gdb" | Выходная рабочая область |
5 | XY допуск |
Допуск XY в инструменте Вырезание (Clip) является необязательным, поэтому его можно опустить, если нужно воспользоваться допуском XY по умолчанию для каждого входного класса пространственных объектов.
Откроются два окна: окно Просмотр (Watch) для показа значений заданных выражений и окно Стек (Stack) для отображения значений переменных в стеке системного вызова (окна Просмотр (Watch) и Стек (Stack) можно включить или отключить нажатием соответствующих кнопок на панели инструментов Отладка (Debugging)). Курсор помещается в первую строку скрипта, интерпретируемую языком Python, которая является инструкцией import. Отрегулируйте размер окна приложения Python по необходимости для размещения новых окон.
В дополнение к кнопке Шаг вперед (Step Over) на панели инструментов Отладка (Debugging) также имеются кнопки Шаг (Step) и Возврат на шаг (Step Out) .
Будут отображены все переменные, установленные в окне Интерактивность (Interactive) и скрипте multi_clip, а также импортированные вами модули. Окно Стек (Stack) служит для проверки области действия переменных и их значений, а также содержимого всех доступных модулей.
arcpy.GetMessages()
Все сообщения из инструмента Вырезание (Clip) распечатываются в окне Интерактивность (Interactive). В окне Интерактивность (Interactive) во время сеанса отладки можно использовать любой объект или переменную, поэтому с его помощью можно выполнять запрос объектов и манипулировать переменными.