У меня есть основной скрипт, который импортирует модуль из другого скрипта (sub_script.py) с помощью importlib. Я также передать аргумент другой сценарий:importlib не может найти модуль после компиляции с помощью Pyinstaller
import importlib
parser = argparse.ArgumentParser(add_help=False)
group = parser.add_mutually_exclusive_group(required=True)
group.add_argument('-option1', action = "store_true")
args = parser.parse_known_args()
if args[0].option1:
function = importlib.import_module('sub_script')
function.main(namespace = args[1])
Хотя этот код прекрасно работает сам по себе (с помощью Python main_script.py), он возвращает следующее сообщение об ошибке после того, как я исполнила его Pyinstaller:
Traceback (most recent call last):
File "<string>", line 33, in <module>
ImportError: No module named sub_script
main_script returned -1
Я попытался:
1) добавить __init__.py
под моей папке
или 2) движение sub_script.py к подпапка с __init__.py
, но либо работает.
Я также попытался выполнить его под Ubuntu, но получил то же сообщение.
Тем не менее, выполнил и побежал нормально, если я просто используя импорт:
import sub_script
Любые идеи? Благодаря!