我從csv創建了yaml文件,這些文件中有許多unicode字符,但是我似乎無法得到它來轉儲unicode而沒有它給我一個解碼錯誤。我正在使用ruamel.yaml
庫。使用YAML轉儲unicode
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc2 in position 11: ordinal not in range(128)
我試着解析字符串,unicode字符串,用「utf-8」編碼似乎沒有任何工作。我見過很多的例子,顯示增加一個代表來解決這個問題,但他們似乎都在使用舊的方法ruamel,我似乎無法找到如何在更新的方法在任何地方記錄如何做到這一點。
from ruamel.yaml import YAML
class YamlObject(YAML):
def __init__(self):
YAML.__init__(self)
self.default_flow_style = False
self.block_seq_indent = 2
self.indent = 4
self.allow_unicode = True
textDict = {"text": u"HELLO_WORLD©"}
textFile = "D:\\testFile.yml"
yaml = YamlObject()
yaml.dump(textDict, file(textFile, "w"))
我可以統一整個字典並且工作,但它不會給我我需要的格式。
我需要的僅僅是:
text: HELLO_WORLD©
我怎麼能這樣做?
這是Python 2還是Python 3? – jwodder
@jwodder當然Python2('file'不是Python 3的內部) – Anthon
是的,它是Python 2.對不起,應該說! – SamH