我正在用python -i main.py
运行一个脚本。这个脚本使用threading
模块启动一些C线程和python线程,然后python代码结束并进入提示符。如果不小心按下了ctrl-d,我如何防止python退出?我不想不小心按下CTRL-D(已经发生了两次),然后交互式解释器突然与所有线程一起关闭。
我需要仍然可以访问交互式解释器。目标是启动C线程和Python线程,然后从Python监控它们。
我试着使用readline
并将^D绑定到空值,但它仍然会终止python。
示例(main.py):
print("Init code for python thread")
print("Init code for c thread")
当用python -i main.py
运行这个程序时,在第二行完成后,我得到提示>>>
。如果我在提示符下按CTRL-D,它将启动一个systemExit。我想不惜一切代价防止这种情况发生。
1条答案
按热度按时间m1m5dgzv1#
如果你正在等待输入,那么你可以把输入调用封装在try/except中。记住Ctrl-D实际上是EOF。
因此,这可能是一个有用的模式: