Python 列出具有几何图形类型的地图图层名称

Python 列出具有几何图形类型的地图图层名称,python,gis,arcpy,Python,Gis,Arcpy,我正试图编写一个Python工具来显示所有层及其几何体类型的名称,但当我运行代码时,它只将所有层显示为多边形。有人能指出我哪里出了问题吗?我是个新手 以下是我目前的代码: import arcpy.mapping as mapping mxd = mapping.MapDocument ("CURRENT") layers = mapping.ListLayers(mxd) inFC = arcpy.GetParameterAsText(0) outFC = arcpy.GetParameter

我正试图编写一个Python工具来显示所有层及其几何体类型的名称,但当我运行代码时,它只将所有层显示为多边形。有人能指出我哪里出了问题吗?我是个新手

以下是我目前的代码:

import arcpy.mapping as mapping
mxd = mapping.MapDocument ("CURRENT")
layers = mapping.ListLayers(mxd)
inFC = arcpy.GetParameterAsText(0)
outFC = arcpy.GetParameterAsText(1)
desc = arcpy.Describe("C:/Program Files(x86)/ArcGIS/Desktop10.4/Reference Systems/utm.shp")
type = desc.shapeType
for lyr in layers:
    print lyr.name +" " + type

您当前正在使用
type=desc.shapeType
,描述特定shapefile的
shapeType
。这不会告诉您MXD中的各个层(您正在使用层中的lyr:循环)

为了获得特定层的
形状类型
,请在循环中再次描述:

for lyr in layers:
    desc = arcpy.Describe(lyr)
    print lyr.name, desc.shapeType

很乐意帮忙!:)请注意,在堆栈交换中,有成千上万的ArcPy问题被询问和回答。