Интерфейс командной строки Python
Эй, ребята / девчонки, я пишу скрипт на python, который исправляет некоторые повторяющиеся проблемы в моей базе данных. Я хотел бы показать некоторый статус прогресса пользователям, в настоящее время я просто печатаю его следующим образом:
print "Merged " + str(idx) + " out of " + str(totalCount);
Проблема в том, что он печатает это в новой строке для каждой записи, и это не выглядит так хорошо :) я хотел бы либо всегда печатать строку выше на той же строке на экране, либо использовать какой-то умный виджет, который отображает ее в каком-то индикаторе прогресса.
Я намерен запустить это в командной строке любые предложения будут высоко оценены.
2 ответа:
Если вы просто хотите постоянно перезаписывать одну и ту же строку, используйте
'\r'
иprint foo,
, чтобы действовать как возврат каретки и печать без конца строкиwhile doingStuff: msg = "\rMerged %s out of %s" % (idx, totalCount) print msg,
Но если вы разрабатываете более модное консольное приложение, вам, возможно, следует изучить использование
curses
(только для Unix, хотя)
Проверить
fish
.