[python]捕获ctrl+C事件后处理

Posted FL1623863129

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[python]捕获ctrl+C事件后处理相关的知识,希望对你有一定的参考价值。

使用try方法:

	try:
		model.learn(total_timesteps=int(trian_steps), callback=callback)
	except KeyboardInterrupt:
		model.save(log_dir + "--".format(algo, env_name, trian_steps))
		results_plotter.plot_results([log_dir], trian_steps, results_plotter.X_TIMESTEPS, ", ".format(algo, env_name))
		plt.savefig(log_dir + "--.png".format(algo, env_name, trian_steps))
		# plt.show()
		print('  training finished.'.format(algo, env))

使用signal模块

import signal

def exit(signum, frame):
  print('You choose to stop me.')
  exit()

signal.signal(signal.SIGINT, exit)
signal.signal(signal.SIGTERM, exit)

while 1:
  print('running......)

以上是关于[python]捕获ctrl+C事件后处理的主要内容,如果未能解决你的问题,请参考以下文章

Qt和PyQt中的组合键输入捕获处理

如何使用 PyQt 在 python 应用程序中处理 Ctrl+C?

python的异常处理

在python中捕获Ctrl + C / SIGINT并优雅地退出多进程[重复]

为啥我的 WPF KeyDown 处理程序没有捕获 CTRL+A?

cmd模块:捕获Ctrl + C [重复]