如果只需要更新一行(例如,创建进度条),最简单的方法是使用
'r'(回车)和
sys.stdout:
import sysimport timefor i in range(10): sys.stdout.write("r{0}>".format("="*i)) sys.stdout.flush() time.sleep(0.5)
如果您需要支持移动指针等的适当控制台UI,请使用
curses标准库中的模块:
import timeimport cursesdef pbar(window): for i in range(10): window.addstr(10, 10, "[" + ("=" * i) + ">" + (" " * (10 - i )) + "]") window.refresh() time.sleep(0.5)curses.wrapper(pbar)
强烈建议使用该
curses.wrapper函数来调用您的主函数,它将在出现错误的情况下负责清理终端,因此以后不会处于无法使用的状态。
如果创建更复杂的UI,则可以为屏幕的不同部分,文本输入框和鼠标支持创建多个窗口。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)