@skrtgg

Как сделать вывод на одной строке?

Как можно сделать вывод только на одной строке? искал в интернете ничего не нашел, чтобы строка оставалась той же, но менялись только цифры в ней
import time


a = int(input('Укажите время для таймера в секундах - '))
while a > 0 :
        print('Осталось ', a, 'секунд'')
        a -= 1
        time.sleep(1)
print('Таймер завершен')
  • Вопрос задан
  • 90 просмотров
Решения вопроса 2
bingo347
@bingo347
Crazy on performance...
print(f'Осталось {a} секунд', end='\r')
Но по хорошему еще стоит подумать над затиранием предыдущей строки, например пробелами, так как последующие строки будут меньшей длины

В общем виде я бы сделал так:
import time


a = input('Укажите время для таймера в секундах - ')
space = ' ' * len(a)
a = int(a)
while a > 0 :
    print(f'Осталось {a} секунд', space, end='\r')
    a -= 1
    time.sleep(1)
print('Таймер завершен  ')
Ответ написан
@ceytnot
Работаю не по специальности (:
Предварительно в настройках PyCharm поставить галочку Run > Edit configuration > Emulate terminal in output console.

import time
import os

a = int(input('Укажите время для таймера в секундах - '))

while a > 0:
    os.system('cls')
    print(f'Осталось {a} секунд')
    a -= 1
    time.sleep(1)
print('Таймер завершен  ')


Код приведен для Win, если у вас Linux, то надо заменить os.system('cls') на os.system('clear').
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы