wrapper() 辅助函数

虽然上面的基本调用很容易,但 curses 包提供了 wrapper(func, ...) 辅助函数。以下示例包含上述内容:

main(scr, *args):
    # -- Perform an action with Screen --
    scr.border(0)
    scr.addstr(5, 5, 'Hello from Curses!', curses.A_BOLD)
    scr.addstr(6, 5, 'Press q to close this screen', curses.A_NORMAL)

    while True:
        # stay in this loop till the user presses 'q'
        ch = scr.getch()
        if ch == ord('q'):
    
curses.wrapper(main)

这里,wrapper 将初始化 curses,创建 stdscr,一个 WindowObject 并传递 stdscr 和 func 的任何进一步参数。当 func 返回时,wrapper 将在程序退出之前恢复终端。