我想编写一个内部调用python脚本的批处理文件,我希望python脚本将一些值返回到批处理文件。我怎样才能做到这一点?

时间:2014-10-16 07:17:54

标签: python batch-file

我正在调用python脚本如下:
      启动python file.py 如何在变量中获取输出?

1 个答案:

答案 0 :(得分:0)

使用start会使问题复杂化。它启动一个程序运行,并没有等待它完成。如果您还想等待程序完成并使用其输出,您可能不想使用start

由于其他节目无法进入"您的批处理过程并更改其变量,您需要使用某种机制从程序输出信息,并使用一种机制来读取该信息并将其转换为批处理文件中的变量。

如果您的输出机制仅供程序打印到标准输出(注意:在这种情况下您不应该使用start,因为它会将标准输出发送到新窗口),您可以重定向它到文件然后将其读入变量。批处理文件并不容易,但可以:Batch equivalent of Bash backticks

或者,如果您可以更改Python程序,您也可以采用稍微简单的方法 - 您可以让Python脚本直接写出批处理文件,然后让第一个批处理文件调用那个。 E.g:

python script.py
call generated.bat
echo %MYVAR%

Python脚本创建文件generated.bat

的位置
set MYVAR=This is an example