Найти - Пользователи
Полная версия: Использование экранированной последовательности \r
Начало » Python для новичков » Использование экранированной последовательности \r
1
masha
Подскажите пожалуйста, почему вот такой код не работает.
import time
for i in range(10):
    print('%d\r' % i)
    time.sleep(1)

Точнее он работает, но не так как предполагалось. Я хотела, чтобы символы выводились на одном месте.
alexsis
Возможно не совсем красиво:
import time, os
for i in range(10):
    os.system('clear')
    print('%d\r' % i)
    time.sleep(1)
Еще как вариант - использовать curses.
masha
Спасибо, что откликнулись, но очистка экрана это мягко говоря, совсем не то.
Я хочу понять из-за чего не работает возврат коретки.
valentjedi
masha
возврат каретки работает нормально, просто в питоновской функции print() есть параметр end, который по умолчанию ‘\n’. Вам надо вот-так:
import time
for i in range(10):
    print('%d\r' % i, end='')
    time.sleep(1)
masha
valentjedi
Блин, как все очевидно оказывается, спасибо огромное!
py.user.next
вообще, процент уже считается устаревшим (format вместо него)
    print(i, end='\r')
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB