RT
==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
如果是4的话就按楼上的方法 utf8_l=len(str.encode('utf-8')) 改成decode
如果 '哈哈' 想得到是2的话 就可以 len('哈哈'.decode('utf-8')) 如果是6的话 就 len('哈哈')
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
试试这个看看