Cuando se describen, las clases de entidad y las tablas tienen una propiedad fields que devuelve una lista de objetos de Field, y una propiedad indexes que devuelve una lista de objetos de Index. Cada objeto de campo o de índice tiene varias propiedades que se pueden utilizar para explorar el objeto. Como alternativa, las funciones ListFields y ListIndexes se pueden usar para crear las mismas listas.
ListFields(dataset, wild_card, field_type) | Devuelve una lista de los campos que se encuentran en el valor de entrada |
ListIndexes(dataset, wild_card) | Devuelve una lista de los índices de atributos que se encuentran en el valor de entrada |
En el siguiente ejemplo se muestra cómo crear una lista de campos y recorrer su contenido para encontrar un campo concreto.
import arcpy
fc = 'D:/St_Johns/data.gdb/roads'
# Get a list of field objects
fields = arcpy.ListFields(fc, 'Flag')
for field in fields:
# Check the field name, perform a calculation when finding the field 'Flag'
if field.name == 'Flag':
# Set the value for the field and exit loop
arcpy.CalculateField_management(fc, 'Flag', '1')
break
A continuación se muestran las propiedades de los objetos de campo y de índice:
Propiedad | Explicación |
---|---|
name | El nombre del campo. |
aliasName | El nombre del alias del campo. |
domain | El nombre del dominio asociado. |
editable | True, si el campo es editable. |
isNullable | True, si el campo puede contener valores nulos. |
required | True, si el campo es obligatorio. |
length | La longitud del campo. |
type | SmallInteger, Integer, Single, Double, String, Date, OID, Geometry, BLOB. |
scale | La escala del campo. |
precision | La precisión del campo. |
Propiedad | Explicación |
---|---|
name | El nombre del índice. |
isAscending | True, si el índice se ordena de manera ascendente. |
isUnique | True, si el índice es único. |
fields | Una lista de objetos Field. Es igual que utilizar la propiedad Describe fields. |
Sugerencia:
ListFields y ListIndexes se pueden usar para limitar los resultados en función del nombre y el tipo.