Python: обновить последнюю строку и другие строки асинхронно
Скажем, у меня есть множество обновляющей информации и некоторая переменная, которая должна постоянно отображаться на консоли. Я хочу сделать следующий эффект:
Info 1
Info 2
Info 3
...
Info n
Var1: xxx, Var2: xxx <- The last line on the window of console
Информация и переменные могут меняться по-разному, как заставить эти две части асинхронно меняться в консоли?
2 ответа
На самом деле нет необходимости менять эти части асинхронно. Вы можете использовать \r
символ, чтобы вернуть каретку в последней строке, а затем использовать несколько пробелов, чтобы очистить его. Следующий код Python должен сделать свое дело.
s = ''
for info in infos:
print "\r", " " * len(s), "\r"
print "info %s" % info
s = "var1: %s, var2: %s" % (var1, var2)
print s,
Вопрос в том, что печать будет настолько быстрой, что вы не сможете запечатлеть вывод глазами, поэтому может потребоваться добавить функцию sleep() во время печати.
2016-02-19 08:54