Python 3.x和打印Unicode符号

时间:2013-11-20 23:46:11

标签: python unicode python-3.x



我试图打印出一些unicode符号,从U + 2660到U + 2667。 有一个没有问题,我只写:

print('\u2660')

但是当我想在循环中打印一组符号(或者一个,但是依赖于变量)时,这样的东西不起作用:

for i in range(2660, 2668):
    print('\u{}'.format(i))

我认为Python会首先执行.format函数并用数字替换{},然后查看引号内的内容并打印它。它没有,我不明白为什么。 :)
请帮忙,
TIA
Wiktor的

1 个答案:

答案 0 :(得分:2)

解析Unicode转义是在编译时完成的,而不是运行时。

for i in range(0x2660, 0x2668):
    print(chr(i))