Это ясно объясняется в readme для библиотеки.
**kwargs
позволяет некоторымinit(strip=None)
переопределить поведение по умолчанию.a € |
True
:Передать
False
илиinit(convert=None)
переопределить, должны ли коды ansi удаляться из вывода. Поведение по умолчанию - отключить, если в Windows или перенаправлен вывод (а не tty).
True
:Передать
False
илиstrip=False
переопределить, нужно ли преобразовывать коды ANSI в вывод в вызовы win32. Поведение по умолчанию заключается в том, чтобы преобразовать, если в Windows, а вывод - в tty (терминал).
Предполагая , что вы не на Windows, то ответ должен передать strip=None
вместо значения по умолчанию init
в --color=always
. Это просто как передача grep
вместо значения по умолчанию ls
или ls
.
Конечно, ваш код не звонит init
в первую очередь. Вы должны быть, но вы избегаете этого, потому что вы, вероятно, не в Windows:
Приложения должны инициализировать Colorama, используя:
from colorama import init
init()
В Windows вызов
init()
будет фильтровать escape-последовательности ANSI из любого текста, отправленного на stdout или stderr, и заменить их эквивалентными вызовами Win32.На других платформах вызов
init()
не имеет эффекта (если вы не запрашиваете другие дополнительные функции, см. «Ввод ключевых слов» ниже). По дизайну это позволяет приложениямinit()
безоговорочно звонить на всех платформах, после чего выход ANSI должен работать.