标注 | 说明 | 数据类型 |
输入值 | 要解析的输入值。 | Any Value |
格式名称、扩展名和工作空间 (可选) | 移除所有保留字符。给定 C:\1Tool Data\InputFC.shp 的输入值:
| Boolean |
派生输出
标注 | 说明 | 数据类型 |
路径 | 输入的工作空间。 | 工作空间 |
名称 | 文件名(不包括扩展名)。 | 字符串 |
扩展名 | 文件扩展名。 | 字符串 |
工作空间名称 | 工作空间的名称。 | 字符串 |
此工具专用于 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",则
import os
name = os.path.basename(inData)
import os path = os.path.dirname(inData)
import os
ext = os.path.splitext(inData)[1][1:]
import os folder = os.path.basename(os.path.dirname(inData))
要以类似于选中格式名称、扩展名和工作空间参数时的方式解析路径:
import os
import re
name = os.path.basename(inData)
name = re.sub('[^0-9a-zA-Z]+', '_', name)
if name[0].isdigit():
name = "_" + name
import os path = os.path.dirname(inData)
import os
ext = os.path.splitext(inData)[1][1:]
import 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 |
格式名称、扩展名和工作空间 (可选) | 移除所有保留字符。给定 C:\1Tool Data\InputFC.shp 的输入值:
| Boolean |
标注 | 说明 | 数据类型 |
路径 | 输入的工作空间。 | 工作空间 |
名称 | 文件名(不包括扩展名)。 | 字符串 |
扩展名 | 文件扩展名。 | 字符串 |
工作空间名称 | 工作空间的名称。 | 字符串 |