Come posso emettere testo colorato sul terminale, in Python? Qual è il miglior simbolo Unicode per rappresentare un blocco solido?
Vuoi imparare le sequenze di escape ANSI. Ecco un breve esempio:
CSI="\x1B["
print(CSI+"31;40m" + "Colored Text" + CSI + "0m")
Per maggiori informazioni vedere http://en.wikipedia.org/wiki/ANSI_escape_code
Per un carattere di blocco, prova un carattere unicode come \u2588:
print(u"\u2588")
Mettere tutto insieme:
print(CSI+"31;40m" + u"\u2588" + CSI + "0m")
Per Windows non potete stampare su console con i colori a meno che non stiate usando la win32api.
Per Linux è semplice come usare print, con le sequenze di escape descritte qui:
Per il carattere da stampare come un riquadro, dipende davvero da quale font state usando per la finestra della console. Il simbolo del cancelletto funziona bene, ma dipende dal font:
#
Potete usare l'implementazione Python della libreria curses: http://docs.python.org/library/curses.html
Inoltre, esegui questo e troverai la tua scatola:
for i in range(255):
print i, chr(i)