如何在Python中处理多字节字符串

2024-05-16 03:17:20 发布

您现在位置:Python中文网/ 问答频道 /正文

PHP中有多字节字符串函数来处理多字节字符串(例如:CJK脚本)。例如,我想通过在python中使用len函数来计算多字节字符串中有多少个字母,但它返回的结果不准确(即该字符串中的字节数)

japanese = "桜の花びらたち"
print japanese
print len(japanese)#return 21 instead of 7

PHP中是否有类似mb_strlen的包或函数?


Tags: of函数字符串脚本lenreturn字节字母
2条回答

请先将其转换为unicode

print len(japanese.decode("utf-8"))

给出7。您正在处理utf-8编码的字符串,它实际上有21个字节。

使用Unicode strings

# Encoding: UTF-8

japanese = u"桜の花びらたち"
print japanese
print len(japanese)

注意字符串前面的u

要将bytestring转换为Unicode,请使用decode"桜の花びらたち".decode('utf-8')

相关问题 更多 >