У меня есть родительская папка, давайте назовем ее «рабочая область».Внутри этой родительской папки есть подпапки, в которых есть дополнительные подпапки с определенным соглашением об именах.Это выглядит примерно так:
- Workspace
- Subfolder A
- Name
- Image
- Class
- Subfolder B
- Name
- Image
- Class
- Subfolder C
- Name
- Image
- Class
Мне нужна какая-то помощь или направление для написания скрипта, который проходит через AC в рабочей области и копирует все файлы в папке «images» каждой подпапки в новое место назначения.
Это то, что у меня есть:
import os
import arcpy
import shutil
import fnmatch
workspace = "source"
pfolder = "rootdir"
files = os.listdir(workspace)
print (files)
test = workspace + "\\scratch.gdb"
if os.path.exists(test):
print ("Scratch GDB already exists")
shutil.rmtree(test)
scratch = arcpy.CreateFileGDB_management(workspace,"scratch")
print ("Original Scratch GDB removed and new GDB created ")
else:
scratch = arcpy.CreateFileGDB_management(workspace,"scratch")
print ("Scratch GDB has been created")
def main():
for dirname, dirnames, filenames in os.walk(pfolder):
for file in filenames:
if fnmatch.fnmatch(file,"*.jpg")==True:
shutil.copy2(file,scratch)
print("Files have been copied!")
else:
print("Error in copying files")
Я хочу скопировать все файлы jpg в этом подкаталоге и поместить их в базу геоданных.По какой-то причине он не запускает строку кода, которая выполняет цикл и копирует.