python 计算字符串长度(含中文)

it2023-01-05  67

txt = '名字12' lenTxt = len(txt) lenTxt_utf8 = len(txt.encode('utf-8')) size = int((lenTxt_utf8 - lenTxt)/2 + lenTxt) print("size = " , size ," ,urf8 = ",lenTxt_utf8," ,len = " ,lenTxt)

一个中文算两个字符,先转换成utf8,然后通过计算utf8的长度和len函数取得的长度,进行对比即可知道字符串内中文字符的数量,自然就可以计算出字符串的长度

 

print(len('中文'.encode('utf-8'))) #输出几个字节 执行结果: 6 print(len('中文'.encode('gbk'))) 执行结果: 4 print(len(',。'.encode('gbk'))) 执行结果: 4

2.总结

utf-8编码:一个中文包含繁体字等于三个字节,一个英文字符等于一个字节。 gbk编码:一个中文包含繁体字等于二个字节,一个英文字符等于一个字节。

 

参考:https://blog.csdn.net/thinbug/article/details/85167202

https://blog.csdn.net/rzlongg/article/details/89502762

最新回复(0)