2012-01-23 34 views
2

我在記錄模塊旁邊使用curses,並且在啓動curses時遇到記錄問題。在Python中登錄時使用curses

記錄工作並打印一些文本到控制檯(取決於級別),直到調用curses.initscr()

關於如何解決它的任何想法?

+0

當我在Python中使用日誌記錄和詛咒時,發現此代碼很有用:http://code.google.com/p/kosciak-misc/source/browse/python/examples/curses/CursesHandler.py – eliasj

回答

4

一旦curses被初始化,你應該通過它執行所有輸出 - 否則它會看起來愚蠢(正如你所看到的)。

您不能只使用print/sys。(stdout | stderr).write,因爲它會干擾ncurses輸出。

最好的解決方案是,使一個ncurses pad用於日誌記錄,將所有日誌消息重定向到它。您可以自定義您的日誌處理程序來執行此操作(請參閱logging.handlers獲取一些靈感)。