Resumen
La función Describe devuelve un objeto Describe con varias propiedades, como tipo de datos, campos, índices y muchos otros. Sus propiedades son dinámicas, es decir, en función del tipo de datos que se describa, dispondrá de distintas propiedades de descripción para utilizarlas.
Las propiedades de descripción se organizan en una serie de grupos de propiedades. Cada dataset concreto adquirirá las propiedades de al menos uno de estos grupos. Por ejemplo, si se describe una clase de entidad de geodatabase, podría acceder a las propiedades desde los grupos de propiedades Clase de entidad de geodatabase, Clase de entidad, Tabla y Dataset. Todos los datos, independientemente del tipo, adquirirán siempre las propiedades de Descripción de objetos genéricas.
Debate
Muchos tipos de datos incluyen propiedades de otros grupos de propiedades. Por ejemplo, si se describe una clase de entidad de geodatabase, podría acceder a las propiedades desde los grupos de propiedades Clase de entidad de geodatabase, Clase de entidad, Tabla y Dataset.
- Propiedades de descripción de objetos
- ArcInfo Workstation Propiedades del elemento
- ArcInfo Workstation Propiedades de tabla
- Propiedades de dataset de dibujo CAD
- Propiedades de clase de entidad de CAD
- Propiedades de clase de entidad de cobertura
- Propiedades de cobertura
- Propiedades de dataset
- Propiedades de tabla dBASE
- Propiedades de rastreo del editor
- Propiedades de clase de entidad
- Propiedades de archivo
- Propiedades de carpeta
- Propiedades de clase de entidad de geodatabase
- Propiedades de tabla de geodatabase
- Propiedades de red geométrica
- Propiedades de capa de estadísticas geográficas
- Propiedades de dataset LAS
- Propiedades de capa
- Propiedades de documento de mapa
- Propiedades de dataset de mosaico
- Propiedades de capa de Network Analyst
- Propiedades de dataset de red
- Propiedades de estructura de parcelas
- Propiedades de archivo de proyecto
- Propiedades de banda de ráster
- Propiedades de catálogo de ráster
- Propiedades de dataset ráster
- Propiedades de conjunto de registros y conjunto de entidades
- Propiedades de clase de relación
- Propiedades de clase de representación
- Propiedades de dataset esquemático
- Propiedades de diagrama esquemático
- Propiedades de carpeta esquemática
- Propiedades de clase de entidad SDC
- Propiedades de clase de entidad de shapefile
- Propiedades de tabla
- Propiedades de vista de tabla
- Propiedades de archivo de texto
- Propiedades de TIN
- Propiedades de herramienta
- Propiedades de caja de herramientas
- Propiedades de topología
- Propiedades de cobertura VPF
- Propiedades de clase de entidad VPF
- Propiedades de tabla VPF
- Propiedades de espacio de trabajo
Sintaxis
Describe (value, {datatype})
Parámetro | Explicación | Tipo de datos |
value | The specified data element or geoprocessing object to describe. | String |
datatype | The type of data. This is only necessary when naming conflicts exists, for example, if a geodatabase contains a feature dataset (FeatureDataset) and a feature class (FeatureClass) with the same name. In this case, the data type is used to clarify which dataset you want to describe. (El valor predeterminado es None) | String |
Valor de retorno
Tipo de datos | Explicación |
Describe | Devuelve un objeto con propiedades que detallan el elemento de datos descrito. Algunas de las propiedades del objeto devuelto contendrán valores u objetos literales. |
Muestra de código
Ejemplo de propiedades de descripción (script independiente)
El siguiente script independiente muestra algunas propiedades de capa y objeto de descripción de una capa configurada por un parámetro de script. El parámetro se puede definir como un archivo de capa o una capa de un mapa.
import arcpy
# Get the layer as a parameter and describe it.
#
# The layer could be a layer in ArcMap (like "some_layer")
# Or, it could be a .lyr file (like "C:/data/some.lyr")
#
layerString = arcpy.GetParameterAsText(0)
desc = arcpy.Describe(layerString)
# Print selected layer and describe object properties
#
print("Name: {}".format(desc.name))
if hasattr(desc, "layer"):
print("Layer name: {}".format(desc.layer.name))
print("Layer data source: {}".format(desc.layer.catalogPath))
print(".lyr file: {}".format(desc.catalogPath))
else:
print("Layer name: {}".format(desc.name))
print("Layer data source: {}".format(desc.catalogPath))
if desc.FIDSet != '':
print("Number of selected features: {}".format(len(desc.FIDSet.split(";"))))