首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从pyinstaller包#2访问python解释器

从pyinstaller包#2访问python解释器
EN

Stack Overflow用户
提问于 2020-02-17 06:58:29
回答 1查看 206关注 0票数 1

我正在尝试执行一个python脚本,它包含在datas中,并捆绑到一个pyinstaller可执行文件中(在mac上)。我需要向这个脚本传递参数,所以我不能只使用exec(open(read()。在pyinstaller之外,sys.executable是python解释器,因此调用python脚本可以很好地工作。在pyinstaller中,sys.executable是‘主’py脚本,所以它只是再次打开我的应用程序,而不是调用新的脚本。如何在我的应用程序中调用我的附加python脚本?这就是我试图获得的,它不能与捆绑的pyinstaller应用程序一起工作:

代码语言:javascript
复制
subprocess.call([sys.executable, os.path.join(wd,"tests","errorMessage.py"), vArgument])
EN

回答 1

Stack Overflow用户

发布于 2020-02-17 07:55:19

这就是我是如何让它工作的,这有点古怪。它没有像我最初想要的那样调用python解释器,而是执行包含参数的py脚本:

代码语言:javascript
复制
# 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似乎在整个交易之后都能正常工作..天哪..。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60253999

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档