2012-10-02 26 views
5

En IDLE, print(chr(219)) (219 es el carácter de bloque) emite "Û".Python: el carácter de bloque no se imprimirá

¿Hay alguna manera de obtener el carácter de bloque en su lugar?

Esto podría ser un problema en toda la computadora, ya que no puedo obtener el carácter de bloque para imprimir desde cualquier lugar, copiándolo de charmap y en cualquier cuadro de texto solo da como resultado el Û.

Respuesta

9

Utilice el juego de caracteres correcto.

3>> print(bytes((219,)).decode('cp437')) 
█ 
3>> ord(bytes((219,)).decode('cp437')) 
9608 
3>> hex(9608) 
'0x2588' 
3>> print('\u2588') 
█ 

Unicode Character 'FULL BLOCK' (U+2588)

0

Su cáscara pitón probablemente está usando ya sea ISO-8859-1 o Unicode, no él mismo conjunto de caracteres Mapa de caracteres.

chr (219) es también U + 00DB, que es probablemente el carácter Unicode Û. No sé qué juego de caracteres está utilizando, pero no hay ningún símbolo de los personajes que temprano en el conjunto de caracteres Unicode.

Cuestiones relacionadas