您可以将闭包用作从主脚本获取其状态的信号处理程序:
import signalimport sysimport timedef main_function(): data_for_signal_handler = 10 def signal_handler(*args): print data_for_signal_handler sys.exit() signal.signal(signal.SIGINT, signal_handler) # Or whatever signal while True: data_for_signal_handler += 1 time.sleep(0.5)if __name__ == '__main__': main_function()



