6 votos

Utilizando el nombre de clase de característica como nombre de salida (buffer_analysis)

Soy bastante nuevo en python, y estoy tratando de recorrer una lista de clases y realizar un buffer en cada clase de función. Así que he hecho esto:

import arcpy  
from arcpy import env  
env.workspace = "C:/EsriPress/Python/Data/Midterm/Oil_project.gdb"  
env.overwriteOutput = True  
fclist = arcpy.ListFeatureClasses("", "Polyline", "Well_Data")  

for fc in fclist  
buffer = arcpy.Buffer_analysis(fc, fcname_buffer, "75 FEET")

Sin embargo, quiero que cada nombre de archivo de salida que el nombre original de la clase de característica con _buffer al final. Por ejemplo, el nombre de la primera clase de la característica en la lista es Well_A_BB05.shp. Quiero que la salida sea "Well_A_BB05_buffer". No consigo que funcione.

8voto

Gavin Schulz Puntos 592

En el arcpy.Buffer_analysis() ajustar su salida a '{}_buffer'.format(fc) que añadirá su nombre de clase de la característica de fc delante de la _buffer texto por ejemplo, si su clase característica se llama "Línea 3" se llamaría "Line3_buffer" a la clase de función de buffer de salida

import arcpy  
from arcpy import env  
env.workspace = "C:/EsriPress/Python/Data/Midterm/Oil_project.gdb"  
env.overwriteOutput = True  

fclist = arcpy.ListFeatureClasses("", "Polyline", "Well_Data")  

for fc in fclist: 
    arcpy.Buffer_analysis(fc, '{}_buffer'.format(fc), "75 FEET")

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X