我从文件中获取数据:
words = re.findall(r'[\w]+',self._from.encode('utf8'),re.U)
Run Code Online (Sandbox Code Playgroud)
如果文件包含:
你好你好吗?
那么结果将是:
['你好你好吗']
但如果文件包含俄语(即西里尔符号),则:
Привет,какдела?
在这种情况下,结果是:
['\ xd0','\ xd1','\ xd0','\ xd0\xb2\xd0\xb5\xd1','\ xd0\xba\xd0','\ xd0\xba','\ xd0', '\ xd0\xb5\xd0','\ xd0']
为什么?跆拳道?我已添加:
sys.setdefaultencoding('utf-8')
Run Code Online (Sandbox Code Playgroud)
我正在使用python2.7和linux ubuntu.
words = re.findall(r'[\w]+',self._from.decode('utf8'),re.U)
print u" ".join(words)
Run Code Online (Sandbox Code Playgroud)