You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中输出多字节Unicode字符(以上标2为例)

问题解决:Python中输出3字节Unicode上标字符

错误原因

你输入的0xe28282是UTF-8编码的字节序列拼接值,并非该字符的Unicode码点。chr()函数需要传入单个Unicode码点(范围0x0000到0x10FFFF),而0xe28282的十进制值为14828162,远超Unicode码点的最大范围0x10FFFF(十进制1114111),因此触发ValueError。

上标'2'的实际Unicode码点是U+00B2,对应的UTF-8编码是三个字节:0xE2 0x82 0x82。

正确实现方法

方法1:用Unicode码点调用chr()

print(chr(0xB2))  # 输出:²
# 完整码点写法也可行
print(chr(0x00B2))

方法2:直接写入字符本身

Python支持直接在代码中输入Unicode字符(确保编辑器编码为UTF-8):

print('A/cm²')  # 输出:A/cm²

方法3:通过UTF-8字节序列解码

如果只有UTF-8的字节值,可构造bytes对象后解码:

print(b'\xe2\x82\x82'.decode('utf-8'))  # 输出:²

方法4:使用Unicode转义序列

# 十六进制转义写法
print('A/cm\u00B2')  # 输出:A/cm²
# 字符名称转义写法
print('A/cm\N{SUPERSCRIPT TWO}')  # 输出:A/cm²

内容的提问来源于stack exchange,提问作者kazutaka

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 01:27:02