Puedes usar el arcpy.ListFeatureClasses para lograr esto hay una opción de tipo. La documentación es la siguiente
http://resources.arcgis.com/en/help/main/10.1%20/index.html#//002z00000011000000
Supongo que tu pregunta es vaga por una razón y no está mal escrita. Va a tener que haber algunas suposiciones de mi parte y la respuesta sólo puede ser un código psuedo, porque usted no ha declarado lo que los tipos de archivo cumplen con sus criterios para la conversión, y si hay múltiples tipos de datos. Si los hay, tendrás que ampliar esta respuesta con if/else
con el fin de realizar en última instancia Do something
o proporcione su script en el OP. El da.walk
es un híbrido de os.walk
e incluye un tipo de datos.
Creo que esto puede ser un malentendido de lo que es un feature classes
es. Se puede encontrar un debate más detallado sobre el tema aquí en otro hilo pero lo básico:
La definición de clase de rasgo es una "colección homogénea de rasgos comunes, cada uno de los cuales tiene la misma representación espacial, como puntos, líneas o polígonos, y un conjunto común de columnas de atributos, por ejemplo, una clase de rasgo de línea para representar las líneas centrales de las carreteras".
Las clases de características se almacenan en un contenedor, ya sea un shapefile, un DWG o una base de datos. Para un pensamiento de alto nivel, un shapefile puede ser considerado como una sola clase de característica, mientras que un gdb es muchas clases de características. Su script tendrá que dirigirse al contenedor que contiene el feature class
(shapefile o algún otro contenedor, no importa) y realizar la acción sobre el contenido. Puede utilizar arcpy.da.Walk
para dirigirse a los contenedores que cumplen un determinado datatype
(siempre que sea un contenedor compatible con ESRI).
for dirpath, dirnames, filenames in arcpy.da.Walk(workspace,
topdown=True,
datatype="featureclass"):
for filename in filenames:
arrcpy.whatever()
Otro ejemplo:
Según la Documentación de ESRI se puede consultar en base a dataypes
y filetype
for dirpath, dirnames, filenames in arcpy.da.Walk(workspace,
datatype='FeatureClass', type=['Polygon', 'Polyline']):
He aquí un ejemplo de usar da.walk
en un árbol de datos
'''
Created on Aug 25, 2014
@author: PeterW
'''
# Import system modules
import arcpy
import os
# Set current workspace
workspace = r'E:\Projects\Projects14\H103342\test2.gdb'
arcpy.env.workspace = workspace
# Set environment settings
arcpy.env.overwriteOutput = True
# Create list of Feature Classes in each Feature Dataset
fcs = []
# Iterate through each Feature Dataset within the File Geodatabase
for dirpath, dirnames, filenames in arcpy.da.Walk(workspace, datatype = "FeatureDataset"):
for filename in filenames:
print filename