Py学习  »  问与答

Python如何计算中文字符串的长度?

爱情的枪 • 11 年前 • 25913 次点击  

RT

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/398
 
25913 次点击  
文章 [ 4 ]  |  最新文章 11 年前
happydagui
Reply   •   1 楼
happydagui    11 年前

==python 2.x==

str=u'哈哈' # a unicode string
print len(str) # 2

或者

str='哈哈'  # a str string
print len(str.decode('utf-8')) # 2

==python 3.x==

str='哈哈'
print(len(str)) # 2
三画儿
Reply   •   2 楼
三画儿    11 年前

如果是4的话就按楼上的方法 utf8_l=len(str.encode('utf-8')) 改成decode

三画儿
Reply   •   3 楼
三画儿    11 年前

如果 '哈哈' 想得到是2的话 就可以 len('哈哈'.decode('utf-8'))
如果是6的话 就 len('哈哈')

Py站长
Reply   •   4 楼
Py站长    11 年前
def str_len(str):  
    try:  
        row_l=len(str)  
        utf8_l=len(str.encode('utf-8'))  
        return (utf8_l-row_l)/2+row_l  
    except:  
        return row_l
    return row_l

试试这个看看