Для меня (в Mac OS X 10.5 Terminal.App, Python 2.6.5):
>>> print 'a\ra'
a
или для лучшего примера:
>>> print 'longstring\rshort'
shorttring
IOW, \r
«возвращает курсор в начало строки» (без инициализации нового длинного), так что 'short'
«перезаписывает» начало 'longstring'
.
Этот эффект удобен для показа пользователю однострочного «текущего статуса», который обновляется во время длительной операции - используйте print '\rupdate',
с завершающей запятой, чтобы избежать появления символа новой строки, чтобы обновить статус с помощью перезаписывая предыдущий. Конечно, вы должны убедиться, что каждая обновленная строка, показанная таким образом, по крайней мере такая же, как и предыдущая (легко, просто заполнив пробелами).
Обратите внимание, что другие респонденты заметили различные визуальные эффекты на своих платформах (вы сами видели, как \r
исчезает без эффекта, что является беспрецедентным в моем опыте), поэтому этот хороший способ предоставления обновлений не будет работать на каждой платформе ! -)