У меня есть эта папка:
sa
, в котором есть папки a
, b
, c
. Эти папки имеют папки:
PST
и DBOUND
.
Если, например, папка b
имеет пустую папку pst
и существует dbounds
, следующий код НЕ ДОЛЖЕН добавлять содержимое из этой папки и пропустить его.
код:
import geopandas as gpd
from glob import glob
ps=[]
db=[]
for i in glob(r'C:\Users\user\Desktop\sa' + '**/*/*/*', recursive=True):
if i.endswith('PST.shp'):
ps.append(i)
if i.endswith('DBOUND.shp'):
db.append(i)
Как сделать так, чтобы он не добавлялся из папки, если в их подпапках пустые папки PST
или DBOUND
? и добавлять только из папок, в которых есть все необходимые подпапки?
Пояснение
Чтобы помочь вам понять:
Если все папки a
и b
в порядке, возвращается:
C:\Users\user\Desktop\sa\a\DBOUND\DBOUND.shp
C:\Users\user\Desktop\sa\a\PST\PST.shp
C:\Users\user\Desktop\sa\b\DBOUND\DBOUND.shp
C:\Users\user\Desktop\sa\b\PST\PST.shp
Если c
имеет пустые папки PST
или DBOUND
, он не должен отображаться в списке вообще. Следует пропустить папку и не добавлять ее.