在控制台重寫多行
問題:
是否可以編輯之前的內容在控制台中列印行並重寫多行,類似於更新基於文字的RPG或進度吧?
答案:
Unix
利用curses 模組來實現此功能。
Windows
考慮以下選項:
使用詛咒的範例(Unix):
import curses import time def report_progress(filename, progress): """progress: 0-10""" 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()使用詛咒的範例(Unix):
以上是如何在 Python 中更新先前的控制台行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!