Забываем про перенос строки: фишка print( , end='\r') в Python

Сегодня разберем одну прикольную штуку в Python, которая может пригодиться – print( , end='\r'). Звучит загадочно, да? 😄 Но на самом деле все просто!
Обычно, когда мы используем функцию print(), Python автоматически переносит вывод на новую строку. Но что, если нам нужно выводить информацию в одну и ту же строку, например, для создания анимации или прогресс-бара? 🤔 Вот тут-то и приходит на помощь end='\r'.

Что делает \r?
\r – это специальный символ, который называется "возврат каретки". Он перемещает курсор в начало текущей строки. 😲 Представьте себе старую печатную машинку –  каретка возвращается в начало, чтобы печатать следующую строку.

Как это использовать?
Давайте посмотрим на примере.  Вот простой код, который выводит числа от 1 до 10 в одну строку с небольшой задержкой:
import time

for i in range(1, 11):
  print(i, end='\r')
  time.sleep(1)

В этом коде end='\r'  говорит Python не переносить строку после вывода числа, а возвращать курсор в начало. В результате каждое следующее число будет перезаписывать предыдущее, создавая эффект счетчика. 😎

Где это может пригодиться?
  • Прогресс-бары: Можно отображать процент выполнения задачи в одной строке, обновляя его по мере продвижения.
  • Анимация: Создавать простые анимации, например, бегущую строку или вращающийся символ.
  • Отображение динамических данных: Обновлять информацию в реальном времени, например, курсы валют или температуру.
Вот так, друзья! 😉  Небольшая, но полезная фишка, которая может пригодиться в разных ситуациях.

Комментариев нет:

Отправить комментарий