首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python:从同一个解释器同时执行多个脚本

Python:从同一个解释器同时执行多个脚本
EN

Stack Overflow用户
提问于 2010-02-01 10:44:34
回答 4查看 5.8K关注 0票数 1

我有一个python脚本,它再次执行4-5 python脚本。出于性能原因,我希望使用相同的解释器来执行所有脚本。

我怎么处理这个问题?

EN

回答 4

Stack Overflow用户

发布于 2010-02-01 11:01:03

显而易见的解决方案(可能需要稍微调整一下)就是从主脚本中调用每个脚本的主要功能。例如,如果script1.py包含:

代码语言:javascript
运行
复制
#!/usr/bin/python
def main():
  // Do something
if __name__ == "__main__":
   main()

放进master.py

代码语言:javascript
运行
复制
#!/usr/bin/python
import script1
def main():
  script1.main()

if __name__ == "__main__":
  main()

您可以在任意多的脚本中继续这种模式。

票数 8
EN

Stack Overflow用户

发布于 2010-02-01 14:17:10

也许您正在查找Python2.x中的execfile函数。

在Python3中,它被删除了,但是有一些简单的选择

票数 3
EN

Stack Overflow用户

发布于 2018-04-13 01:07:16

我编写了一个包,用于从同一个解释器执行多个脚本(顺序不是同时执行)。

安装

代码语言:javascript
运行
复制
pip install mand

使用

代码语言:javascript
运行
复制
mand script1.py script2.py script3.py script4.py

您可以指定模块路径或模块名称。

您可以在使用颠簸 stdlib模块(用于python3)和穿线 stdlib模块时“同时”运行脚本。在不同的线程中调用runpy.run_pathrunpy.run_module,但是只有当模块是IO绑定而不是CPU绑定时,才能看到性能上的好处。

使用多处理或os.system将为每个脚本生成单独的解释器,因此模块不会在同一个解释器中运行。

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

https://stackoverflow.com/questions/2176053

复制
相关文章

相似问题

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