Модуль curses

Введение

Примеры

  • 0

    Пример базового вызова

    import curses
    import traceback
    
    try:
        # -- Initialize --
        stdscr = curses.initscr()   # initialize curses screen
        curses.noecho()             # turn off auto echoing of keypress on to screen
        curses.cbreak()             # enter break mode where pressing Enter key
                                    #  after keystroke is not required for it to register
        stdscr.keypad(1)            # enable special Key values such as curses.KEY_LEFT etc
    
        # -- Perform an action with Screen --
        stdscr.border(0)
        stdscr.addstr(5, 5, 'Hello from Curses!', curses.A_BOLD)
        stdscr.addstr(6, 5, 'Press q to close this screen', curses.A_NORMAL)
    
        while True:
            # stay in this loop till the user presses 'q'
            ch = stdscr.getch()
            if ch == ord('q'):
                break
    
        # -- End of user code --
    
    except:
        traceback.print_exc()     # print trace back log of the error
    
    finally:
        # --- Cleanup on exit ---
        stdscr.keypad(0)
        curses.echo()
        curses.nocbreak()
        curses.endwin() 
  • 0

    Вспомогательная функция оболочки ().

    В то время как основной вызов выше достаточно легко, пакет проклятий предоставляет 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)
    
     

    Здесь обертка будет инициализировать проклятья, создать stdscr , а WindowObject и передать как stdscr, а также любые дополнительные аргументы func . Когда func возвращается, wrapper восстановит терминал до выхода из программы.

Синтаксис

Параметры

Примечания