Я думаю, что если вы хотите проверить наличие нескольких путей, проверка не будет выполнена, если один путь не существует. Возможно, вы могли бы попробовать другой подход.
Для данного примера, если вы хотите выбрать подпапки, вы можете попробовать следующее:
Чтение подкаталогов данного каталога:
# list all subfolders and files in directory demo
dir = dbutils.fs.ls ("/mnt/adls2/demo")
Отфильтровать соответствующие подкаталоги:
pathes = ''
for i in range (0, len(dir)):
subpath = dir[i].path
if '/corr' in subpath or '/deci' in subpath and subpath.startswith ('dbfs:/'): # select dirs to read
pathes = pathes + (dir[i].path) + ' '
# convert the string to a list
pathes = list(pathes.split())
Используйте список результатов для чтения кадра данных:
df = (spark.read
.json(pathes))