【发布时间】:2009-01-12 21:11:44
【问题描述】:
我有一个基于 Python 的应用程序,它可以在一个简单的 read-eval-print-loop 中接受一些命令。我正在使用raw_input('> ') 来获取输入。在基于 Unix 的系统上,我还 import readline 让事情表现得更好一些。这一切都很好。
问题是有异步事件进入,我想在它们发生时立即打印输出。不幸的是,这让事情看起来很难看。 "> " 字符串在输出后不会再次出现,如果用户正在输入一半内容,它会将他们的文本切成两半。它可能应该在打印某些内容后重绘用户正在处理的文本。
这似乎是一个已解决的问题。这样做的正确方法是什么?
另请注意,我的一些用户是基于 Windows 的。
TIA
编辑:接受的答案在 Unixy 平台下有效(当 readline 模块可用时),但如果有人知道如何在 Windows 下使其工作,将不胜感激!
【问题讨论】:
标签: python readline read-eval-print-loop