看了 http://www.jianshu.com/p/53bb448fe85b# 这篇兄弟的文章, 深有感触,自己做做测试试试:
加不加u是有区别的哦
unicode到string 只需要encode一下,尤其在我们读取unicode的文本,然后需要进行字符拼接的时候,本身unicode无法进行拼接
string decode之后就是unicode了
string和string, 以及 unicode和unicode 可以进行拼接
- 但是string和unicode在一起就有问题了
In [38]:
In [38]:
In [38]: a1 + b1
---------------------------------------------------------------------------
UnicodeDecodeError Traceback (most recent call last)
<ipython-input-38-ffd3f356020c> in <module>()
----> 1 a1 + b1
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 0: ordinal not in range(128)
我们该怎么办呢
In [39]: a1.decode('utf-8') + b1
Out[39]: u'\u5927\u4e2d'
In [40]:
In [40]:
In [40]: a1 + b1.encode("utf-8")
Out[40]: '\xe5\xa4\xa7\xe4\xb8\xad'
本文探讨了在Python中处理Unicode与字符串时遇到的问题及解决办法。通过具体示例展示了如何避免UnicodeDecodeError错误,并提供了两种有效解决方案:将Unicode转换为字符串或将字符串转换为Unicode。
712

被折叠的 条评论
为什么被折叠?



