我有一个unicode对象列表,想要将它们编码为utf-8,但编码似乎不起作用。
代码在这里:
>>> tmp = [u' test context']
>>> tmp.encode('utf-8')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'list' object has no attribute 'encode'
>>>
我无法理解为什么没有属性编码
答案 0 :(得分:32)
您需要encode
上的tmp[0]
,而不是tmp
。
tmp
不是字符串。它包含一个(Unicode)字符串。
尝试运行type(tmp)
和print dir(tmp)
以便亲自查看。
答案 1 :(得分:4)
您需要单独解码列表中的每个元素
[x.encode('utf-8') for x in tmp]