我有一堆字节字符串(str
,而不是unicode
,在Python 2.7中)包含Unicode数据(在utf-8
编码)。python 2.7 string.join()与unicode
我试图(通过"".join(utf8_strings)
或u"".join(utf8_strings)
)加入他们会抛出
UnicodeDecodeError: 'ascii' codec can't decode byte 0xec in position 0: ordinal not in range(128)`
有没有什么办法让非ASCII字符串使用.join()
方法吗?当然,我可以在for循环中连接它们,但这不会符合成本效益。
那么如何解开unicode和str对象呢? – fiona
@fiona将您的字节字符串决定为Unicode,然后加入。最好尽早解码,只在完成文本时进行编码,并且必须将其传递给只接受字节的内容。 –