diff --git a/src/pyforest/user_specific_imports.py b/src/pyforest/user_specific_imports.py index 6350b20..2509862 100644 --- a/src/pyforest/user_specific_imports.py +++ b/src/pyforest/user_specific_imports.py @@ -60,9 +60,24 @@ def _get_imports_from_user_settings(user_imports_path) -> list: def _assign_imports_to_globals(import_statements: list, globals_) -> None: - symbols = [import_statement.split()[-1] for import_statement in import_statements] - - for symbol, import_statement in zip(symbols, import_statements): + symbols = []; new_import_statements = [] + + for import_statement in import_statements: + def process(statement): + symbols.append(statement.split()[-1]) + new_import_statements.append(statement) + + if "," not in import_statement: + process(import_statement) + else: + multi_import_statement = import_statement.split(",") + splited_statement = multi_import_statement[0].split() + process(multi_import_statement[0]) + for i in range(1, len(multi_import_statement)): + new_statement = splited_statement[:-1] + [multi_import_statement[i]] + process(" ".join(new_statement)) + + for symbol, import_statement in zip(symbols, new_import_statements): exec(f"{symbol} = LazyImport('{import_statement}')", globals_)