Мне нужен ваш совет по этой проблеме.
Я собрал то, что мне нужно в этих двух списках: simpl2
, astik
, с этим кодом:
simpl2 = []
astik = []
for path, subdirs, files in os.walk(rootfolder):
for name in files:
if 'sim2.shp' == name:
simpl2.append(os.path.join(path, name))
elif 'ASTIK.shp' == name:
astik.append(os.path.join(path, name))
Приведенный выше код выполняет поиск в корневой папке, содержащей папки: v1.v2,v3,v4
Итак, используя это:
for i,j in zip(simpl2,astik):
print(i,j)
дает это:
СОДЕРЖАНИЕ
C:\Users\user\Desktop\pl\v1\exported\sim2.shp C:\Users\user\Desktop\pl\v1\ASTIK\ASTIK.shp
C:\Users\user\Desktop\pl\v2\exported\sim2.shp C:\Users\user\Desktop\pl\v4\ASTIK\ASTIK.shp
Вопрос
Как убедиться, что пары будут из одной и той же папки (например, первая строка, которая поступает как из v1
, а если нет (например, вторая строка, где одна из v2
, а другая из * 1026) *) чтобы они вообще не имели пары.
Это должно произойти, потому что они будут использоваться позже, и они должны быть правильными парами, в противном случае у меня есть готовый код за исключением тех, у которых нет пары, поэтому проблема заключается в том, как исправить эту часть, которая описана ранее.
Объяснение
Корневая папка:
C:\Users\user\Desktop\pl
после этого pl
появляется папка v1, v2, v3, v4. В каждой из этих папок есть несколько файлов, которые одинаковы для всех 4 папок. Разница лишь в том, что некоторые будут пустыми. Я просто хочу проверить, созданы ли правильные пары одинаковых v
в списках.