3

atexitモジュールに登録され、終了時に呼び出される関数に終了コードを設定する方法はありますか? を呼び出すとsys.exit(code)エラーが発生し、終了コードが目的の値に設定されません。

d:\>python atexit_test.py
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
  File "atexit_test.py", line 3, in myexit
    sys.exit(2)
SystemExit: 2

d:\>echo %ERRORLEVEL%
0

の内容atexit_test.py:

def myexit():
  import sys
  sys.exit(2)

import atexit
atexit.register(myexit)
4

1 に答える 1

1

@Łukasz Rogalski によって報告されているように、テスト コードが Python 2.7.x (私の場合は 2.7.6) で機能することを証明できます。そこで、これは Python 3.x のバグであると想定し、バグ レポートを提出しました。

于 2016-05-16T08:04:12.177 に答える