Python在当前环境下运行另一个Python脚本,传递参数并获得打印输出

2024-09-29 17:15:42 发布

您现在位置:Python中文网/ 问答频道 /正文

一个有点难看的问题,但我没有找到现有的SO帖子涵盖它。

现在我需要使用这个github上现有的python工具

这是一段相当大的代码,有很多依赖项,我不想搞砸。简而言之,可以通过传递命令行参数来运行其模块,例如:

timesearch.py timesearch -r "subreddit1" -l "1466812800" -up "1498348800"

现在,我需要使用一个for循环多次运行这个工具,每次传递不同的参数值。当您运行这个工具时,这个工具还会将一些输出输出输出到命令行中—我也希望拦截并从python脚本中打印出来。最后,我需要确保在我继续循环并运行工具之前,timesearch工具的当前执行已经完成。

这里有一点需要说明的是,我确实需要确保timesearch是使用与for循环一起运行主脚本的相同环境来执行的。

我想知道最好的办法是什么。

如果我这么做就不行了:

^{pr2}$

它失败的原因有很多——它没有使用我编写脚本时使用的环境,也没有捕获timesearch的打印输出。

有什么建议吗?

只是强调一下-我不能在timesearch中直接调用我需要的函数,因为它调用__init__来根据您传递的参数设置一些东西。


Tags: 模块工具代码命令行pygithub脚本for

热门问题