Python Unicode字符编码是什么?

11

在Python 3中是否有一种方法可以“插入”Unicode字符到字符串中?例如,

>>>import unicode
>>>string = 'This is a full block: %s' % (unicode.charcode(U+2588))
>>>print(string)
This is a full block: █

1
你的例子使用了代码点,但你说“字符”。你应该知道,当大多数人说字符时,它可能对应于多个代码点。 - user395760
3个回答

19

3
如果你想从动态码点创建一个字符(这似乎不是这里的情况;我为了完整性而添加了它),可以使用unichr()函数。 - Sven Marnach
2
如果您更喜欢可读性更高的内容,可以使用 u'这是一个完整块:\N{FULL BLOCK}' - Eryk Sun
2
我在哪里可以找到像“FULL BLOCK”这样的名称列表呢? - buhtz
@buhtz,https://en.wikipedia.org/wiki/Block_Elements 列出了块; https://en.wikipedia.org/wiki/Unicode_symbols -> http://www.decodeunicode.org/de/u+2580 . 希望有所帮助。 - denis
你在\u后面输入的数字是十进制、十六进制、八进制还是其他什么? - Toothpick Anemone
@buhtz: import unicodedata; unicodedata.name('\u2588') 也可以工作。 - Eric

0

您可以使用 \u 转义 Unicode 字符编码:

s = u'\u0020'

这定义了一个包含空格字符的字符串。


0
你可以使用\udddd,其中将dddd替换为字符编码。
print u"Foo\u0020bar"

打印

Foo bar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接