Spaces:
Runtime error
Runtime error
| # Copyright (C) 2021 NVIDIA CORPORATION & AFFILIATES. All rights reserved. | |
| # | |
| # This work is made available under the Nvidia Source Code License-NC. | |
| # To view a copy of this license, check out LICENSE.md | |
| """Utils to deal with directories and paths.""" | |
| import glob | |
| import os | |
| def get_immediate_subdirectories(input_dir): | |
| """List dirs immediately under input_dir. | |
| Args: | |
| input_dir (str): Directory to list children of. | |
| Returns: | |
| (list): List of directory paths relative to input_dir. | |
| """ | |
| return sorted([name for name in os.listdir(input_dir) | |
| if os.path.isdir(os.path.join(input_dir, name))]) | |
| def get_recursive_subdirectories(input_dir, ext): | |
| """List dirs recursively under input_dir. | |
| Args: | |
| input_dir (str): Directory to list children of. | |
| ext (str): Extension of files expected in this directory. | |
| Returns: | |
| (list): List of directory paths relative to input_dir. | |
| """ | |
| lines = glob.glob('%s/**/*.%s' % (input_dir, ext), recursive=True) | |
| dirpaths = [os.path.dirname(item) for item in lines] | |
| dirpaths = [os.path.relpath(item, input_dir) for item in dirpaths] | |
| dirpaths = sorted(list(set(dirpaths))) | |
| return dirpaths | |