3

次の簡単なコードを実行しようとしています

import sys

print("Starting Test Python Module");

def testmethod():
    print("From test method")

sys.exitfunc = testmethod
print("Terminating Test Python Module");

そしてそれは印刷します

C:\Users\athakur\Softwares>python test.py
Starting Test Python Module
Terminating Test Python Module

「From Test method」が出力されない理由がわかりません

ただし、 atexit を使用しても問題なく動作します

import atexit

print("Starting Test Python Module");

def testmethod():
    print("From test method")

atexit.register(testmethod)
print("Terminating Test Python Module");

出力

C:\Users\athakur\Softwares>python test.py
Starting Test Python Module
Terminating Test Python Module
From test method
4

2 に答える 2

6

sys.exitfuncpython2.4 から廃止され、 python3 で削除されました

于 2015-10-02T06:01:52.140 に答える
3

sys.exitfunc Python 3.x には存在しません。

于 2015-10-02T06:01:47.363 に答える