python中的32位unicode

Bha*_*Rao 3 python unicode

Python有一个转义序列\u来显示unicode值.但是,这仅限于16位unicode值.那是

>>> '\u1020'
'?'
Run Code Online (Sandbox Code Playgroud)

而32位未编码值不起作用.那是

>>> '\u00001000'
'\x001000'
Run Code Online (Sandbox Code Playgroud)

这显然是错的.python 文档提到

转义序列\ u0020表示在给定位置插入序号值为0x0020(空格字符)的Unicode字符.

Bha*_*Rao 8

python 如何使用Unicode来清楚地提到使用'\U'来表示32位unicode序列.

>>> "\u0394"                          # Using a 16-bit hex value
'?'
>>> "\U00000394"                      # Using a 32-bit hex value
'?'
Run Code Online (Sandbox Code Playgroud)

在这种情况下

>>> '\U00001000'
'?'
Run Code Online (Sandbox Code Playgroud)