Python:块字符不会打印

时间:2012-10-02 23:19:04

标签: python character-encoding ascii block non-ascii-characters

在IDLE中,print(chr(219))(219的块字符)输出“Û”。

有没有办法让它输出块字符呢?

这可能实际上是某种计算机范围的问题,因为我似乎无法从任何地方打印块字符,将其复制到charmap并进入任何文本框只会导致Û

2 个答案:

答案 0 :(得分:9)

使用正确的字符集。

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)

答案 1 :(得分:0)

您的python shell可能使用ISO-8859-1或Unicode,而不是与字符映射相同的字符集。

chr(219)也是U + 00DB,可能是Unicode字符Û。我不知道你正在使用什么字符集,但Unicode字符集的早期没有任何符号字符。