Я пишу модуль Python (3.5), в котором я хотел бы использовать существующий модуль Python из проекта с открытым исходным кодом. Модуль, который я хочу импортировать, содержит:
- несколько функций
- a
if __name__ == '__main__':
инструкция
, но не содержит функции def main(args)
.
Поскольку нет действительной функции main
, я не могу импортировать ее с помощью import module
и использовать как module.main()
. Хотя я нашел варианты для отдельного выполнения его в виде сценария с помощью команд os.system()
и subprocess.Popen()
, на самом деле я ищу способ сделать этот вызов неотъемлемой частью моего кода.
Я понимаю, что могу сам добавить часть def main()
в исходный код, но, поскольку она исходит из проекта с открытым исходным кодом, я ищу способы оставить ее нетронутой, чтобы мне не нужно было поддерживать ее самостоятельно если он обновляется.
Я прошел через другие очень похожие вопросы, такие как это и это , которые не могли решить мою проблему. Этот ответ дает мне ощущение, что я пытаюсь сделать это не тривиально.
Есть ли способ сделать это?