Estou escrevendo um script genérico que envolve a gravação de shapefiles em um diretório que são mesclados. Depois de gravar os arquivos na pasta Saída , estou tentando obter o algoritmo saga: mergeshapeslayers para mesclar todos os arquivos na pasta Saída . Eu usei o Model Builder e, embora seja útil até certo ponto, acho que ele é usado para fins específicos, enquanto estou tentando criar um script para fins genéricos.
Código:
##Test=name
##Select_folder=folder
##Result=output vector
import os
import glob
path_1 = Select_folder
path = path_1
os.chdir(path)
def function():
output = glob.glob(path_1 + './*.shp')
x = 0
while output[x]:
for fname in glob.glob("*.shp"):
outputs_1 = processing.runandload("qgis:fieldcalculator", output[x], 'Number', 1, 10, 0, True, 1 , "C:\Users\Me\Desktop\Output\\" + fname)
multiple_0 = glob.glob("*.shp")
x = x + 1
if x + 1 > len(output):
processing.runalg("saga:mergeshapeslayers", output[0], ";".join(multiple_0) , Result)
break
else:
continue
if path_1:
function()
else:
pass
glob.glob(path_1 + './*.shp')
define onde estão os arquivos .shp; e glob.glob("*.shp")
busca os nomes dos arquivos .shp. Por favor, corrija-me se eu estiver enganado.
Z
? O que ofunction(Z)
serviço serve se não retornar nada? Qual é a diferença entreglob.glob(Z + './*.shp')
eglob.glob("*.shp")
?