1
遷移到Python 3 xml.etree.ElementTree的write()無法按預期工作。Python3:StringIO和Elementree編碼
我需要做下面的代碼工作與Python3:
tree = ET.ElementTree(root)
fileobj = StringIO()
tree.write(fileobj, encoding="utf-8")
與PY3的問題是,它把FileObj文件的字節,因此無法將其寫入到StringIO的。然後檢查ElementTree docutmentation它似乎我必須使用encoding='unicode'
,這在py3中工作得很好,但與py2失敗。
現在,它有辦法使它與py2和py3一起工作,還是必須使用io.BytesIO作爲py3的解決方法,還是應該使用基於python版本的不同編碼?
這裏最好的解決方案是什麼?