Tôi đang viết một kịch bản chung bao gồm viết shapefiles vào một thư mục sau đó được hợp nhất với nhau. Sau khi ghi các tệp vào thư mục đầu ra , tôi đang cố gắng lấy thuật toán saga: mergeshapeslayers để hợp nhất tất cả các tệp trong thư mục đầu ra . Tôi đã sử dụng Trình tạo mô hình và mặc dù nó rất hữu ích ở một mức độ nào đó, tôi thấy rằng nó được sử dụng cho các mục đích cụ thể trong khi tôi đang cố gắng tạo một kịch bản cho các mục đích chung.
Mã số:
##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')
xác định vị trí của các tệp .shp; và glob.glob("*.shp")
tìm nạp tên tệp của tệp .shp. Xin hãy sửa tôi nếu tôi nhầm.
Z
gì? Gìfunction(Z)
phục vụ nếu nó trả về gì? Sự khác biệt giữaglob.glob(Z + './*.shp')
và làglob.glob("*.shp")
gì?