从Bat文件调用Python并获取返回代码

Kez*_*zer 15 python batch-file

我正在寻找一种从批处理文件调用python脚本并从python脚本获取返回代码的方法.让我感到困惑,但它基于目前正在使用的系统.我会重写它,但这种方式会更快,更快.

所以:

Bat ---------------------> Python
     * call python file *

Bat <--------------------------------- Python
      * python does a load of work *
      * and returns a return code  *
Run Code Online (Sandbox Code Playgroud)

sth*_*sth 20

Windows shell将返回代码保存在ERRORLEVEL变量中:

python somescript.py
echo %ERRORLEVEL%
Run Code Online (Sandbox Code Playgroud)

在python脚本中,您可以通过调用exit()以下命令退出脚本并设置返回值:

exit(15)
Run Code Online (Sandbox Code Playgroud)

在旧版本的python中,您可能首先必须exit()sys模块导入该函数:

from sys import exit
exit(15)
Run Code Online (Sandbox Code Playgroud)

  • 如果%ERRORLEVEL%变量已存在,则无效.在这种情况下,Python不会覆盖它(但会返回正确的代码 - 它只会被变量隐藏!). (2认同)