Есть ли эквивалент Term :: ANSIScreen для Python?

Perl имеет отличный модуль Term::ANSIScreen для выполнения всевозможных причудливых движений курсора и управления цветом терминала. Вместо этого я хотел бы переопределить программу, которая в настоящее время находится на Perl, на Python, но терминальные цвета ANSI являются ключевыми для ее функции. Кто-нибудь знает аналог?

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
3
0
1 276
4
Перейти к ответу Данный вопрос помечен как решенный

Ответы 4

Хотя я сам не использовал его, я считаю, что для этого обычно используется библиотека curses:

http://docs.python.org/library/curses.html

И инструкции:

http://docs.python.org/howto/curses.html#curses-howto

К сожалению, этот модуль недоступен в стандартной библиотеке для Windows. На этом сайте, по-видимому, есть решение для Windows:

http://adamv.com/dev/python/curses/

Думаю, не совсем то же самое. Вам нужно сделать «окно» с проклятиями, тогда как с Term :: ANSIScreen я могу вывести на терминал произвольное количество строк, используя стандартную функцию печати.

Kamil Kisiel 23.01.2009 03:56

Да, не похоже, что он предназначен для работы с текущим терминалом. Похоже, у Джеффа есть то, что вы ищете.

monkut 23.01.2009 04:35

Вот рецепт поваренной книги в ActiveState, чтобы вы начали. Он охватывает цвета и расположение.

[Обновлено: код pygments, представленный выше Хорхе Варгасом, - лучший подход. ]

Идеально. Это именно то, что я искал. Теперь мне просто нужно связать его с красивым модулем и немного очистить код. Спасибо.

Kamil Kisiel 23.01.2009 08:30
Ответ принят как подходящий

Если вам нужны только цвета, вы можете позаимствовать реализацию у pygments. IMO он намного чище, чем у ActiveState

http://dev.pocoo.org/hg/pygments-main/file/b2deea5b5030/pygments/console.py

отлично, рад, что вам понравилось. Спасибо за лучший ответ!

Jorge Vargas 27.01.2010 03:34

Также есть пакеты срок цвет и термин. Последний может отключать вывод цвета, если stdout не является терминалом.

См. Также этот вопрос.

Другие вопросы по теме