python 2.7到3.3字符串编码/解码更改

时间:2015-01-28 11:44:12

标签: python python-2.7 python-3.x

我只是将2.7脚本修复为3.5并遇到了一些解码/编码问题。

 id = entry.attrib['{http://www.opengis.net/gml/3.2}id']
 code = id.split('-')[2]
 doc['code'] = (code + u"-area").decode('utf-8')

以上是从xml文件中读取内容的2.7版本。在3.3中执行此操作的正确方法是什么,因为某些编码内容已更改且' str'对象没有属性' decode'更多。

我也看到了这一点:.encode('UTF-8').decode('utf-8')这有效果吗?

1 个答案:

答案 0 :(得分:0)

Python 3.X已经拥有unicode字符,因此我认为您不需要使用.decode('utf-8')。在您需要存储doc['code']的某个地方时,您可以使用.encode('utf-8'),然后通过.decode('utf-8')

检索它