Анализировать путь (Инструменты модели)
Краткая информация
Анализирует входные данные по имени файла, расширению, пути и имени последней рабочей области. Выходные данные могут использоваться как встроенные переменные в имени выходных данных других инструментов.
Более подробно о том, как работает инструмент Анализировать путь в ModelBuilder
Использование
Этот инструмент доступен только в ModelBuilder для использования в моделях. Этот инструмент недоступен в панели Геообработка или в Python.
Можно добавить более одного имени переменной, чтобы создать уникальные имена для выходных данных, например,
C:\Temp\Out_%Name%_%Workspace Name%.Например, если в качестве входных данных этот инструмент содержит
C:\1Tool Data\City Roads.shp, он будет разобран на следующие выходные данные:Анализ
Результат
Путь
C:\1Tool DataИмя
City RoadsРасширение
shpИмя рабочей области
1Tool DataЕсли параметр Форматировать имя, расширение и рабочую область включен, указанный выше путь будет преобразован в следующие выходные данные:
Анализ
Результат
Путь
C:\1Tool DataИмя
City_RoadsРасширение
shpИмя рабочей области
_1Tool_DataЭту же функциональность можно получить при написании скриптов с помощью модуля Python
os. Например, если в качестве входных данных будет передана следующая переменная:inData = r"C:\1Tool Data\City Roads.shp", тогдаПолучить имя
City Roadsimport os name = os.path.basename(inData)Получить путь
C:\1Tool Dataimport os path = os.path.dirname(inData)Чтобы получить расширение файла
shpimport os ext = os.path.splitext(inData)[1][1:]Получить имя рабочей области
1Tool Dataimport os folder = os.path.basename(os.path.dirname(inData))
Для выполнения анализа пути аналогично тому, как это происходит при отметке опции Форматировать имя, расширение и рабочую область, выполните следующие действия:
Получить имя
City_Roadsimport os import re name = os.path.basename(inData) name = re.sub('[^0-9a-zA-Z]+', '_', name) if name[0].isdigit(): name = "_" + nameПолучить путь
C:\1Tool Dataimport os path = os.path.dirname(inData)Чтобы получить расширение файла
shpimport os ext = os.path.splitext(inData)[1][1:]Получить имя рабочей области
_1Tool_Dataimport os import re folder = os.path.basename(os.path.dirname(inData)) folder = re.sub('[^0-9a-zA-Z]+', '_', folder) if folder[0].isdigit(): folder = "_" + folder
Выходные данные Пути этого инструмента имеют тип данных рабочей области и могут быть напрямую подключены в качестве входных данных к параметру Расположение класса объектов инструмента Расположение класса объектов, который принимает тип данных рабочей области в качестве входных данных. Для таких инструментов, как Копировать, у которых нет параметра типа данных рабочей области, значение Путь можно передать инструменту с помощью замены встроенной переменной, например,
%Path%\Out_%Name%.%Extension%.
Параметры
| Подпись | Объяснение | Тип данных |
|---|---|---|
|
Входные значения |
Входные значения, которые будут проанализированы. |
Any Value |
|
Форматировать имя, расширение и рабочую область (Дополнительный) |
Указывает, будут ли удалены все зарезервированные символы.
|
Boolean |
Производные выходные данные
| Подпись | Объяснение | Тип данных |
|---|---|---|
|
Путь |
Рабочая область входных данных. |
Workspace |
|
Имя |
Имя файла, включая расширение. |
String |
|
Расширение |
Расширение файла. |
String |
|
Имя рабочей области |
Имя рабочей области. |
String |
Параметры среды
Этот инструмент не использует параметры среды геообработки.
Информация о лицензировании
- Basic: Да
- Standard: Да
- Advanced: Да