长度商标符号的
答
你的终端编码设置为UTF-8。您正在计数的字节在编码字符:
>>> '™'
'\xe2\x84\xa2'
>>> len('™')
3
使用Unicode来算字符,而不是字节:
>>> u'™'
u'\u2122'
>>> len(u'™')
1
或解码从终端编码:
>>> import sys
>>> '™'.decode(sys.stdin.encoding)
u'\u2122'
在Python 3,字符串为unicode
值,Python 2 str
类型重命名为byte
(您的输入与Python 3中的b'™'
基本相同)。
您可能需要Python和Unicode的读了起来: