Entender la sintaxis de las herramientas

En la sección de sintaxis de la página de referencia de herramientas encontrará información detallada de los parámetros de las herramientas. En ella también encontrará la sintaxis para utilizar la herramienta en Python.

SugerenciaSugerencia:

Una forma fácil de crear código Python que ejecute una herramienta en particular es mediante la ventana Resultados, siguiendo los pasos que se describen a continuación:

  1. Utilice el cuadro de diálogo de la herramienta para ejecutar la herramienta.
  2. Después de ejecutar la herramienta, abra la ventana Resultados.
  3. Haga clic con el botón derecho del ratón en el resultado y, a continuación, haga clic en Copiar como fragmento de código de Python.
  4. Pegue el fragmento copiado en su código de Python.

Firma con la herramienta

En la primera línea debajo del encabezado de la sintaxis encontrará la firma con la herramienta.

Nombre y alias de la herramienta

En Python, se utiliza el nombre de la herramienta en lugar de la etiqueta de la herramienta.

  • La etiqueta de la herramienta se visualiza en la parte superior del cuadro de diálogo de la herramienta o en la ventana Catálogo.
  • En Python, el alias de la caja de herramientas sucede al nombre separado por un guión bajo. Por ejemplo, en Python, la herramienta Diferencia simétrica se identifica como SymDiff_analysis.

Parámetros opcionales

Los parámetros de la herramienta pueden ser requeridos u opcionales. Los parámetros opcionales se encuentran entre llaves ({}), al contrario que los parámetros requeridos.

Tipo de parámetro

Símbolo

Significado

Requerido

Parámetro requerido. Estos parámetros siempre son los primeros parámetros en el comando. Debe introducir un valor para los parámetros requeridos.

Opcional

{ }

Parámetro opcional. Estos parámetros siempre se encuentran a continuación de los parámetros requeridos. Si no introduce un valor para un parámetro opcional, se calcula y se utiliza el valor predeterminado. El valor predeterminado de un parámetro se encuentra en la ayuda de la herramienta.

Tipos de parámetros

Los nombres de los parámetros opcionales pueden resultar útiles como acceso directo en Python. En lugar de omitir específicamente otros parámetros opcionales no utilizados con un conjunto vacío de comillas ("") o una almohadilla ("#"), el parámetro puede ajustarse explícitamente mediante el nombre del parámetro.

# Use the parameter name to bypass unused optional arguments arcpy.AddField_management("c:/data/streets.shp", "Address", "TEXT", field_length=120)

Tabla de parámetros

Después de la firma con la herramienta se encuentra la tabla de parámetros, compuesta por tres columnas: Parámetro, Explicación y Tipo de datos. Las filas de la tabla de parámetros conservan siempre un orden de parámetros (al igual que la firma con la herramienta).

Un cuadro de diálogo de herramienta incorpora la posibilidad de mostrar parámetros en un orden diferente al orden de parámetros real, por lo que, en casos muy concretos, el orden de los parámetros del cuadro de diálogo de la herramienta puede ser diferente al orden establecido en la tabla de parámetros. En Python, utilice siempre el orden que se muestra en la tabla de parámetros.

Columna Parámetro

En las celdas de esta columna se incluye el nombre del parámetro, independientemente de si es opcional y, en los parámetros que acepten una lista se incluye la sintaxis de la lista, como aparece a continuación.

Apariencia

Descripción

Lista sencilla

Lista sencilla. A las listas sencillas se les conoce como parámetros multivalor.

Tabla de valores

Listado de listas. El tipo de datos es Tabla de valores. Únicamente las herramientas integradas y las herramientas en la caja de herramientas de Python pueden incorporar parámetros con un tipo de datos de Tabla de valores.

Lista sencilla

Una lista sencilla contiene una lista de valores sencillos. En el ejemplo anterior, el parámetro Distancias tiene un tipo de datos (se muestra en la columna Tipo de datos) doble. Esta lista se puede expresar por medio de uno de los siguientes métodos:

# Method 1: A list of numbers dist = [10.0, 20.0, 30.0]  # Method 2: A list of strings dist = ["10.0", "20.0", "30.0"]  # Method 3: String representation of a list dist = "10.0; 20.0; 30.0"

Tablas de valores: una lista de listas

El tipo de datos de un listado de listas es Tabla de valores. En el ejemplo anterior, el parámetro in_features es una lista de listas en el que una lista individual contiene la ruta a una capa o dataset de entidades y una clasificación opcional de enteros. Es posible expresar este parámetro por medio de uno de los siguientes métodos:

# Method 1: A list of lists inFeatures = [["counties", 2],["parcels", 1],["state"]]  # Method 2: A list of strings inFeatures = ["counties 2", "parcels 1", "state"]  # Method 3: String representation, each list separated by a semicolon inFeatures = "counties 2; parcels 1; state"
SugerenciaSugerencia:

Cuando tenga dudas acerca de la sintaxis de cadena de caracteres de un multivalor o tabla de valores, puede hacer lo siguiente:

  1. Utilice el cuadro de diálogo de la herramienta para ejecutar la herramienta.
  2. Después de ejecutar la herramienta, abra la ventana Resultados.
  3. Haga clic con el botón derecho del ratón en el resultado y, a continuación, haga clic en Copiar como fragmento de código de Python.
  4. Pegue el fragmento copiado en su código de Python.

Columna Explicación

En las celdas de esta columna se recopila información adicional acerca del uso de un parámetro y la forma en la que puede ajustarse, incluidas las opciones de palabra clave. En la mayoría de los casos, esta explicación es la misma que la observada en la ayuda del panel lateral de la herramienta. En algunos casos, la explicación del parámetro podría ser un poco diferente al aspecto que tiene en la ayuda del panel lateral. Por ejemplo, el cuadro de diálogo de la herramienta incluye una casilla de verificación para un parámetro booleano (verdadero/falso), pero la descripción de la sintaxis incluye dos cadenas de caracteres de palabra clave, una para el estado verdadero y otra para el falso.

Las palabras clave son cadenas de caracteres, y siempre se encuentran entre comillas al inicializar la herramienta. Por ejemplo, la herramienta AddField incorpora palabras clave para el tipo de campo:

# Add field idField with data type of long arcpy.AddField_management("Parks", "idField", "LONG", field_is_nullable="NULLABLE", field_is_required="NON_REQUIRED")

Tipo de datos

Todos los parámetros de herramienta poseen un tipo de datos asociado. Entre los tipos de datos simples se encuentran las cadenas de caracteres (conjunto de caracteres alfanuméricos), los booleanos (un valor verdadero o falso) y los largos (un valor entero comprendido entre -2.147.483.648 y 2.147.483.647). Además de estos tipos de datos simples, existen muchos otros tipos de datos creados específicamente para los datos hallados en ArcGIS, como por ejemplo, sistema de coordenadas y extensión.

Utilizar objetos de secuencias de comandos

Los parámetros de herramientas generalmente se definen mediante cadenas de texto simple. Los nombres de datasets, rutas, palabras clave, nombres de campo, tolerancias y nombres de dominio se pueden especificar mediante una cadena de caracteres que está entre comillas.

Algunos parámetros son más difíciles de definir mediante las cadenas de caracteres simples; son parámetros más complejos que requieren muchas propiedades. En lugar de utilizar cadenas de texto largas y complicadas para definir estos parámetros, puede utilizar clases (por ejemplo, clases SpatialReference, ValueTable y Point). La documentación para cada herramienta contiene un ejemplo de secuencia de comandos de cómo se define y se utiliza cada parámetro de herramienta.

En el siguiente ejemplo, se crea un objeto SpatialReference y se utiliza para definir el sistema de coordenadas de salida de una nueva clase de entidad que se creó con la herramienta CreateFeatureClass.

import arcpy  inputWorkspace = "c:/temp" outputName =  "rivers.shp"  prjFile = "c:/projections/North America Equidistant Conic.prj" spatialRef = arcpy.SpatialReference(prjFile)  # Run CreateFeatureclass using the spatial reference object # arcpy.CreateFeatureclass_management(inputWorkspace, outputName, "POLYLINE",                                      "", "", "", spatialRef)

En muchos flujos de trabajo de geoprocesamiento, puede que necesite ejecutar una operación concreta utilizando información de coordenadas y geometría, pero que no necesariamente desee pasar por el proceso de crear una nueva clase de entidad (temporal), llenar la clase de entidad con cursores, utilizar la clase de entidad y, a continuación, eliminar la clase de entidad temporal. En su lugar, puede utilizar objetos de geometría tanto para la entrada como para la salida, para simplificar el geoprocesamiento. Los objetos de geometría se pueden crear utilizando clases Geometry, Multipoint, PointGeometry, Polygon o Polyline .

Temas relacionados

9/11/2013