The Describe function returns the following properties for Layers. Dataset Properties are also supported, as well as the properties of the data type, the layer references. For example, a layer that references a feature class will have access to FeatureClass Properties, while a layer that references a raster dataset will have access to Raster Dataset Properties.
- If the data element being described is a layer in ArcMap or an in-memory layer, then the dataType returned gives information about the data source of layer being described. Some examples of this are "MosaicLayer", "FeatureLayer", and "GroupLayer".
- If the data element being described is a .lyr file, a dataType of "Layer" is returned.
- You can get information about the layer contained by a .lyr file by inspecting the Describe Object returned by the layer property.
The Describe object of the data source to which the layer refers.
The Describe object of the feature class associated with the feature layer.
A semicolon-delimited string of selected feature IDs (record numbers).
The FieldInfo object (property set) of the layer.
The Describe object of the Layer within a .lyr file.
The name of the layer.
The Describe object of the Table within a FeatureLayer.
The layer's definition query WHERE clause.
Layer properties example (stand-alone script)
The following stand-alone script displays some layer properties from an in-memory feature layer.
import arcpy # Create an in memory feature layer from a feature class. # arcpy.MakeFeatureLayer_management( "C:/data/chesapeake.gdb/bayshed", "mainlines_layer") # Create a Describe object from the feature layer. # desc = arcpy.Describe("mainlines_layer") # Print some properties of the feature layer, and its featureclass. # print "Name String: " + desc.nameString print "Where Clause: " + desc.whereClause print "Feature class type: " + desc.featureClass.featureType
Layer properties example 2(stand-alone script)
The following stand-alone script displays some layer properties from a .lyr file.
import arcpy # Create a Describe object from a .lyr file. # desc = arcpy.Describe("c:/data/water_pipes.lyr") # Print some properties of the feature layer # print "Name String: " + desc.nameString print "Where Clause: " + desc.whereClause # Find out if the layer represents a feature class if desc.dataElement.dataType == "FeatureClass": print "Feature class: " + desc.dataElement.catalogPath print "Feature class Type: " + desc.featureClass.featureType else: print "Not a regular feature class"