Выполнение и отладка скриптов Python

Эти шаги построены на основе скрипта, созданного в разделе Создание нового скрипта Python.

Просмотрите полную версию этого скрипта.

Шаги:
  1. Нажмите кнопку Проверить (Check) Кнопка Проверить (Check) на панели инструментов PythonWin Стандартные (Standard) для проверки скрипта на наличие синтаксических ошибок и ошибок отступа. В случае нахождения ошибки курсор будет помещен в соответствующее место. Исправьте синтаксис и проверьте его заново до тех пор, пока не останется ни одной ошибки.
  2. Нажмите кнопку Запустить (Run) Кнопка Запустить (Run) , чтобы открыть диалоговое окно Запустить скрипт (Run Script).
  3. Введите параметры, которые необходимы для скрипта: входная рабочая область, класс пространственных объектов вырезания, выходная рабочая область и допуск XY. Можно указать собственные данные либо воспользоваться учебными. В таблице внизу показаны учебные данные, которыми можно воспользоваться. Так как пути к данным содержат пробелы, заключите весь путь в кавычки при использовании его в качестве параметра.
  4. Путь (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 по умолчанию для каждого входного класса пространственных объектов.

  5. В качестве опции отладки выберите Пошаговый переход в отладчике (Step-through in the debugger) и нажмите кнопку OK.
  6. Откроются два окна: окно Просмотр (Watch) для показа значений заданных выражений и окно Стек (Stack) для отображения значений переменных в стеке системного вызова (окна Просмотр (Watch) и Стек (Stack) можно включить или отключить нажатием соответствующих кнопок Кнопки окна Просмотр (Watch) и представления Стек (Stack View) на панели инструментов Отладка (Debugging)). Курсор помещается в первую строку скрипта, интерпретируемую языком Python, которая является инструкцией import. Отрегулируйте размер окна приложения Python по необходимости для размещения новых окон.

  7. Нажмите кнопку Шаг вперед (Step Over). Кнопка Шаг вперед (Step Over). Будет выполнена текущая строка кода, которая импортирует все указанные модули, после чего будет выполнено перемещение на следующую строку.
  8. В дополнение к кнопке Шаг вперед (Step Over) на панели инструментов Отладка (Debugging) также имеются кнопки Шаг (Step) Кнопка Шаг (Step) и Возврат на шаг (Step Out) Кнопка Возврат на шаг (Step Out).

    • Кнопка Шаг (Step) Шаг (Step): выполняет текущую строку и ожидает на следующей.
    • Кнопка Шаг вперед (Step Over) Шаг вперед (Step Over): выполняет текущую строку. Если строка содержит вызов модуля, функции или метода Python, выполняются соответствующие модуль, функция или метод.
    • Кнопка Возврат на шаг (Step Out) Возврат на шаг (Step Out): при нахождении внутри модуля, функции или метода выполняется их код, а отладчик возвращается к коду, который следует за модулем, функцией или методом.
  9. Нажмите несколько раз кнопку Шаг вперед (Step Over), чтобы достичь инструкции try.
  10. В окне Стек (Stack) щелкните узел _main_module.
  11. Щелкните узел Locals (Dict) для отображения всех локальных переменных и их значений.
  12. Будут отображены все переменные, установленные в окне Интерактивность (Interactive) и скрипте multi_clip, а также импортированные вами модули. Окно Стек (Stack) служит для проверки области действия переменных и их значений, а также содержимого всех доступных модулей.

  13. Нажмите несколько раз кнопку Шаг вперед (Step Over), чтобы переместить курсор к инструкции while. Три выполненных строки создадут список доступных классов пространственных объектов и заполнят переменную fc первым именем.
  14. В окне Просмотр (Watch) щелкните <Новый элемент> (<New Item>) и введите "fc". Нажмите клавишу ВВОД, чтобы заменить выражение на имя переменной. Теперь вы увидите значение переменной.
  15. Нажмите несколько раз кнопку Шаг вперед (Step Over), чтобы задать выходную рабочую область и перейти к инструкции if.
  16. Нажмите несколько раз кнопку Шаг вперед (Step Over), чтобы переместиться в блок кода инструкции if, где будет выполнен инструмент Вырезание (Clip).
  17. Нажмите дважды кнопку Шаг вперед (Step Over), чтобы выполнить инструмент и извлечь следующее имя класса пространственных объектов из перечисления имен классов пространственных объектов. Обратите внимание на значение переменной fc в окне Просмотр (Watch).
  18. Нажмите кнопки окон Просмотр (Watch) и Стек (Stack) Кнопки окна Просмотр (Watch) и представления Стек (Stack View) на панели инструментов Отладка (Debugging), чтобы закрыть их.
  19. Нажмите кнопку окна Интерактивность (Interactive) Кнопка Интерактивность (Interactive). Добавьте следующий код и нажмите клавишу ВВОД:
  20. arcpy.GetMessages()
    

    Все сообщения из инструмента Вырезание (Clip) распечатываются в окне Интерактивность (Interactive). В окне Интерактивность (Interactive) во время сеанса отладки можно использовать любой объект или переменную, поэтому с его помощью можно выполнять запрос объектов и манипулировать переменными.

  21. Нажмите кнопку Закрыть (Close). Кнопка Закрыть (Close) на панели инструментов Отладка (Debugging), чтобы остановить выполнение скрипта.
  22. ПодсказкаПодсказка:
    У строковых переменных перед значением имеется буква u, обозначающая строку Юникода (Unicode). Юникод — это 16-битный стандарт кодировки, предназначенный упростить работу с многими языками.

Связанные темы

9/11/2013