Student0809's picture
Add files using upload-large-folder tool
cb2428f verified
# Copyright (c) Alibaba, Inc. and its affiliates.
import os
from typing import List, Union
def to_abspath(path: Union[str, List[str], None], check_path_exist: bool = False) -> Union[str, List[str], None]:
"""Check the path for validity and convert it to an absolute path.
Args:
path: The path to be checked/converted
check_path_exist: Whether to check if the path exists
Returns:
Absolute path
"""
if path is None:
return
elif isinstance(path, str):
# Remove user path prefix and convert to absolute path.
path = os.path.abspath(os.path.expanduser(path))
if check_path_exist and not os.path.exists(path):
raise FileNotFoundError(f"path: '{path}'")
return path
assert isinstance(path, list), f'path: {path}'
res = []
for v in path:
res.append(to_abspath(v, check_path_exist))
return res