在控制台中重寫多行:超越最後一行
在控制台中重新打印多行被證明是一個特殊的挑戰。雖然可以用“r”更改最後顯示的行,但自訂前面的行仍然是一項難以捉摸的任務。
了解需求
此問題會在各種情況下出現:
跨平台解決方案
理想的解決方案同時滿足Unix 和Windows 環境:
Windows:存在多個選項,包括:
>
使用curses的簡單範例
import curses import time def report_progress(filename, progress): stdscr.addstr(0, 0, "Moving file: {0}".format(filename)) stdscr.addstr(1, 0, "Total progress: [{1:10}] {0}%".format(progress * 10, "#" * progress)) stdscr.refresh() if __name__ == "__main__": stdscr = curses.initscr() curses.noecho() curses.cbreak() try: for i in range(10): report_progress("file_{0}.txt".format(i), i+1) time.sleep(0.5) finally: curses.echo() curses.nocbreak() curses.endwin()
以上是如何在控制台中重寫多行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!