Как использовать оператор печати из определенной функции в Python - PullRequest
0 голосов
/ 28 мая 2020

Как я могу вызвать эту определенную функцию с настраиваемым текстом перед каждой анимацией, чтобы я мог просто напечатать ее как print(Anim("text"))?

import time
import sys

animation = "|/-\\"

def Anim(text):
    for i in range(20):
        time.sleep(0.1)
        sys.stdout.write("\r" + animation[i % len(animation)])
        sys.stdout.flush()

Ответы [ 2 ]

0 голосов
/ 28 мая 2020

Ответ: спасибо @ Matthias

sys.stdout.write(f"\r{text}" + animation[i % len(animation)])
0 голосов
/ 28 мая 2020

Это то, что вы хотите?

import time

animation = "|/-\\"

def Anim(text):
    for i in range(20):
        time.sleep(0.1)
        yield "\r" + animation[i % len(animation)]

for frame in Anim(animation):
    print(frame, flush=True, end="")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...