доступ к интерпретатору python из пакета pyinstaller # 2 - PullRequest
1 голос
/ 17 февраля 2020

Я пытаюсь выполнить скрипт python, который включен в данные и упакован в исполняемый файл pyinstaller (на компьютере ma c). Мне нужно передать параметры в этот скрипт, поэтому я не могу просто запустить exe c (open (read ()). За пределами pyinstaller, sys.executable является интерпретатором python, поэтому вызов скрипта python работает нормально В pyinstaller sys.executable является «основным» сценарием py, поэтому он просто снова открывает мое приложение вместо вызова нового сценария. Как я могу вызвать мой дополнительный сценарий python внутри моего приложения? пытается получить, что не работает с приложением pyinstaller в комплекте:

subprocess.call([sys.executable, os.path.join(wd,"tests","errorMessage.py"), vArgument])

1 Ответ

1 голос
/ 17 февраля 2020

Это то, как я заставил его работать, что-то вроде джанки имо. Он не вызывает интерпретатор python, как я изначально хотел, но выполняет скрипт py, включающий аргументы:

# set the arguments beforehand
sys.argv = [os.path.join(wd,"tests","errorMessage.py"), vArguments]
# execute the script, but also bring in globals so imported modules are there
exec(open(os.path.join(wd,"tests","errorMessage.py")).read(), globals())

Кажется, что Pyinstaller работает после всей этой сделки .. омг ...

...