Skip to main content

EnvManager

Краткая информация

EnvManager – это класс для управления параметрами среды геообработки.

Параметры среды, устанавливаемые классом EnvManager, являются временными. Независимо от того, используется ли EnvManager в качестве декоратора функции или в блоке with, параметры среды устанавливаются только на определенный период времени. По завершении блока with или в конце выполнения декорированной функции, передаваемые классом EnvManager параметры среды вернутся к своим предыдущим значениям (вам не нужно вручную сбрасывать значения параметров среды). Код, расположенный под оператором with, может включать одну строку кода или несколько строк.

Синтаксис

EnvManager(**kwargs)

Имя Объяснение Тип данных

**kwargs

Environment settings are passed as keyword arguments; one or more environments can be passed using the environment name.

with arcpy.EnvManager(cellSize=10, extent='-16, 25, 44, 64'):
    print("Code to be run with the environments set")

For a complete list of the environments and their names, see the env class.

Variant

Методы

reset()

Сбрасывает параметры среды до значений, которые были до вызова класса EnvManager.

Пример кода

EnvManager, пример 1

Используйте класс EnvManager для временной настройки cellSize и extent параметров среды и перед запуском функции PointDensity.

import arcpy
feature_class = r'd:\data\data.gdb\cities'

with arcpy.EnvManager(cellSize=10, extent='-16, 25, 44, 64'):
    raster = arcpy.sa.PointDensity(feature_class, 'POP_RANK')
EnvManager, пример 2

Используйте класс EnvManager для временной настройки параметров среды workspace перед выполнением функции ListFeatureClasses.

import arcpy

with arcpy.EnvManager(workspace=r'd:\data\data.gdb'):
    feature_classes = arcpy.ListFeatureClasses(feature_type='POLYGON')

print('The polygon feature classes are {}'.format(', '.join(feature_classes)))
EnvManager, пример 3

Используйте класс EnvManager как декоратор для настройки параметров среды workspace при объявлении функции.

import arcpy

@arcpy.EnvManager(workspace=r'd:\data\data.gdb')
def myFunc(**kwargs):
    fc_lst = arcpy.ListFeatureClasses()