Como imprimir texto colorido no terminal em Python?

Como posso enviar texto colorido para o terminal, em Python? Qual é o melhor símbolo Unicode para representar um bloco sólido?

Você quer aprender sobre as sequências de fuga ANSI. Aqui está um breve exemplo:

CSI="\x1B["
print(CSI+"31;40m" + "Colored Text" + CSI + "0m")

Para mais informações, consulte http://en.wikipedia.org/wiki/ANSI_escape_code

Para um personagem de bloco, tente um personagem unicode como o \u2588:

print(u"\u2588")

A juntar tudo:

print(CSI+"31;40m" + u"\u2588" + CSI + "0m")
Comentários (2)

Para Windows você não pode imprimir para console com cores a menos que você esteja usando o win32api.

Para Linux é tão simples como usar a impressão, com as sequências de fuga aqui delineadas:

Cores

Para que o personagem seja impresso como uma caixa, realmente depende da fonte que você está usando para a janela do console. O símbolo da libra funciona bem, mas depende da fonte:

#
Comentários (0)

Você pode usar a implementação Python da biblioteca de maldições: http://docs.python.org/library/curses.html

Além disso, corre isto e vais encontrar a tua caixa:

for i in range(255):
    print i, chr(i)
Comentários (1)