@artender

В чем проблема аргумента end в print?

Почему при выполнении этого кода программа дожидается пока закончится цикл for и только потом выводит "Привет!" целиком? Если убираю аргумент end в print, то проблема исчезает, буквы поочередно выводятся с указанным интервалом, но с переводом строки при каждой итерации списка, что мне не нужно.

import time

def func(text):
    lis = list(text)
    for i in lis:
        print(i, end = "")
        time.sleep(0.05)

func("Привет!")
  • Вопрос задан
  • 45 просмотров
Решения вопроса 1
hottabxp
@hottabxp Куратор тега Python
Сначала мы жили бедно, а потом нас обокрали..
Добавьте в print параметр flush=True
import time

def func(text):
    lis = list(text)
    for i in lis:
        print(i, end = "", flush=True)
        time.sleep(0.05)

func("Привет!")
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы