我正在使用vi编辑器编写Python curses程序。想了解如何调试模块进行调试吗?
我可以使用任何工具吗?
答案 0 :(得分:3)
要轻松调试curses
程序,您可以使用curses.wrapper
,如下所示:
import curses
def make_me_an_error(screen, numerator, denominator):
screen.addstr(0, 0, str(numerator/denominator)) # divide by zero
curses.wrapper(make_me_an_error, 1, 0)
从make_me_an_error
返回或异常时,包装器会自动清理屏幕并将其恢复为原始设置
来自wrapper docs:
初始化curses并调用另一个可调用对象func,它应该是 是你的curses使用应用程序的其余部分。如果申请 引发异常,此功能将使终端恢复正常 在重新引发异常并生成回溯之前的状态。该 然后,可调用对象func作为其主窗口'stdscr'传递 第一个参数,后跟传递给wrapper()的任何其他参数。 在调用func之前,wrapper()打开cbreak模式,关闭echo, 启用终端键盘,并在终端时初始化颜色 有颜色支持。在退出时(无论是正常还是异常)它 恢复熟食模式,打开回声,并禁用终端键盘。