如何通过BatchFile从被调用的Python获取返回值(字符串)

时间:2015-09-14 07:46:26

标签: python batch-file

我需要一些帮助。

我在Windows操作系统上使用了python33。

我想要结果。

在批处理文件中调用Python。 (python Testing.py %arg1% %arg2%

python是返回字符串值。 (return('END') or exit('END')

我想要设置BatchFile变量 (SET returnValue = python Testing.py %arg1% %arg2%

并使用变量%returnValue%

我试过搜索关键词。 'python返回值到批处理文件'

我发现了这个暗示 (Python)sys.exit(数字) 所以在BatchFile中调用%ErrorLevel%。

但是这个Sample可以是整数。不要使用字符串。

当然,Python可以在文件中创建字符串。和批处理文件可以加载文件。

或者环境变量也可以。

但我想要不同的方法。

我只想要Python do Return值以及如何使用批处理文件中的返回值。

我该怎么做?

1 个答案:

答案 0 :(得分:8)

到目前为止,我已经理解了你的问题。您希望从批处理文件中执行python脚本,然后将python脚本的输出保存到批处理文件中的变量。

这是我的方式(可能有更好的方法来做到这一点)。我只是从我的批处理文件中执行python脚本test2.py,然后将python脚本的输出保存到一个名为Output的临时文件中,之后我将此文件读取到名为{的批处理文件变量中{1}}然后我删除临时文件MYVAR

批次代码如下:

Output

python文件@ECHO OFF test2.py > Output SET /p MYVAR=<Output ECHO %MYVAR% PAUSE DEL Output 包含以下代码:

test2.py

批处理文件&amp; python文件在同一个目录中!

<强>输出

执行批处理文件后,您将在控制台中看到:

print "Python"

希望它有所帮助!