SetProgressor (arcpy)
Краткая информация
Устанавливает объект прогрессор, который позволяет выдавать информацию о ходе процесса в окне диалога о ходе процесса. Вешний вид диалогового окна хода выполнения может контролироваться, выбирая или индикатор выполнения процесса по умолчанию, или пошаговый.
Синтаксис
Параметр | Объяснение | Тип данных |
type |
Тип прогрессора (по умолчанию или пошаговый).
(Значение по умолчанию — default) | String |
message |
Подпись прогрессора. По умолчанию подписи нет. | String |
min_range |
Начальное значение для прогрессора. Значение по умолчанию равно 0. (Значение по умолчанию — 0) | Integer |
max_range |
Конечное значение для прогрессора. Значение по умолчанию равно 100. (Значение по умолчанию — 100) | Integer |
step_value |
Интервал шага прогрессора для обновления полосы хода процесса. (Значение по умолчанию — 1) | Integer |
Пример кода
Задать объект прогрессора для отображения хода процесса в соответствующем диалоговом окне.
import os
import arcpy
# Allow overwriting of output
arcpy.env.overwriteOutput = True
# Set current workspace
arcpy.env.workspace = "c:/data"
# Get a list of shapefiles in folder
fcs = arcpy.ListFeatureClasses()
# Find the total count of shapefiles in list
fc_count = len(fcs)
# Set the progressor
arcpy.SetProgressor("step", "Copying shapefiles to geodatabase...",
0, fc_count, 1)
# Create a file gdb to contain new feature classes
arcpy.CreateFileGDB_management(arcpy.env.workspace, "fgdb.gdb")
# For each shapefile, copy to a file geodatabase
for shp in fcs:
# Trim the '.shp' extension
fc = os.path.splitext(shp)[0]
# Update the progressor label for current shapefile
arcpy.SetProgressorLabel("Loading {0}...".format(shp))
# Copy the data
arcpy.CopyFeatures_management(shp, os.path.join("fgdb.gdb", fc))
# Update the progressor position
arcpy.SetProgressorPosition()
arcpy.ResetProgressor()