Как заставить строку мигать в течение указанного времени, используя цветную функцию в модуле termcolor? [Python 2.7]

Я пытаюсь понять, как я могу использовать blink атрибут colored() Функция в модуле termcolor мигает в течение определенного времени, а затем останавливается.

Я посмотрел на индекс пакета и свойства этого, но я не видел нигде описывающих, если это будет возможно.

В настоящее время у меня есть следующий фрагмент кода, который заставляет строку мигать бесконечно:

print(colored('Picking the first dealer by random...', 'cyan', attrs=['blink']))

Я хотел бы иметь возможность сделать эту строку мигать в течение нескольких секунд, остановить, а затем продолжить запуск программы. Есть ли возможный способ сделать это?

1 ответ

Решение

Это blink_once() Функция будет показывать слово TEXT в течение.5 секунд, а затем будет скрывать его в течение.5 секунд.

Таким образом, эффект только один раз мигает. Я делаю это, записывая пробелы в том же месте, что и текст, после задержки. Легко изменить задержку или текст или добавить их в качестве параметров, если вам это нужно для вашего конкретного проекта.

blink(number) звонки blink_once() решительный number раз. Так blink(3) покажет слово "ТЕКСТ", мигает 3 раза.

 import sys
 import time

 def blink_once():
     sys.stdout.write('\rTEXT')
     time.sleep(0.5)
     b = ("Loading")
     sys.stdout.write('\r     ')
     time.sleep(0.5)

def blink(number):
     for x in range(0,number):
         blink_once()

blink(3)
Другие вопросы по тегам