我爱编程

ArcPy 获取数据列表以及描述数据

2018-05-27  本文已影响40人  JeetChan

  在进行地理处理时我们有时需要检查数据是否存在,然后用列表函数返回列表数据,在列表数据对象中,还可以用对象的描述信息做判断,做不同的处理。

  如需判断对象是否存在,可用 Exists 函数;列表函数以 “List” 开头,如 ListDatasets、ListFeatureClasses、ListFiles……Describe 函数返回一个包含属性组的动态对象。这些动态生成的 Describe 对象中包含的属性组内容取决于所要描述的数据类型。据所描述的数据类型,会有不同的描述属性可供使用。可以使用 Python 的 hasattr() 函数进行检查。

# -*- coding: utf-8 -*-


import arcpy
from arcpy import env

workspace = r"E:\EsriPress\Python\Data\Exercise06"
env.workspace = workspace

workspace_desc = arcpy.Describe(workspace)
print("workspaceType:" + workspace_desc.workspaceType)

cities_fc = "cities.shp"
shape_exists = arcpy.Exists(cities_fc)  # 对象是否存在

if shape_exists:
    shape_desc = arcpy.Describe(cities_fc)
    print("shapeType:" + shape_desc.shapeType)  # 据所描述的数据类型,会有不同的描述属性可供使用


fcs = arcpy.ListFeatureClasses("c*", "Polygon")  # 第一个参数支持通配符过滤
print("FeatureClasses:")
print(fcs)


参考

面向ArcGIS的Python脚本编程

上一篇下一篇

猜你喜欢

热点阅读