2011-11-16 119 views
0

我有一个信号处理程序来完成它的工作,但唯一的丑陋的事情是每当Ctrl + C被按下时,在终端中出现“^ C”。我该如何摆脱?或者是一个shell的行为?在python中,当我在终端中按Ctrl + C时,如何防止显示“^ C”?

+3

这是终端行为,它与Python或shell没有任何关系。 –

+0

为什么你想要吗?它告诉_user_ Ctrl + C已被按下... –

+0

@DonalFellows我认为用户会知道他/她是否按下了Ctrl + C – ladaghini

回答

1

如果您在Unix平台上,控制终端的最简单方法是curses模块。您可以用curses.noecho()关闭输入字符的回显,再用curses.echo()将其打开,或者在函数调用期间封装函数调用curses.wrapper()以关闭回显。后者是首选方法 - 如果发生异常,它会自动恢复终端状态。