目前,我正在使用这段代码,但它为我提供了指定s3位置的所有文件夹和子文件夹/文件。我只希望s3://production/product/中存在文件夹的名称:
def get_dir_content(ls_path):
dir_paths = dbutils.fs.ls(ls_path)
subdir_paths = [get_dir_content(p.path) for p in dir_paths if p.isDir() and p.path != ls_path]
flat_subdir_paths = [p for subdir in subdir_paths for p in subdir]
return list(map(lambda p: p.path, dir_paths)) + flat_subdir_paths
paths = get_dir_content('s3://production/product/')
[print(p) for p in paths]
当前输出返回所有文件夹和文件所在的子目录,这太多了。我只需要位于指定s3位置的层次级别上的文件夹(没有更深的级别)。我该如何破解此代码?