кодирование в python и запись его в файл YAML на Python - PullRequest
0 голосов
/ 16 октября 2018

У меня есть Unicode, который читается из файла CSV:

df.iloc[0,1]
Out[41]: u'EU-repr\xe6sentant udpeget'

In [42]: type(df_translated.iloc[0,1])
Out[42]: unicode

Я хотел бы иметь его как EU-repræsentant udpeget.Конечная цель - записать это в словарь, а затем, наконец, сохранить этот файл в файл YAML с помощью PyYAML, используя safe_dump.Однако я борюсь с кодировкой.

1 Ответ

0 голосов
/ 16 октября 2018

Если вам действительно нужно использовать PyYAML, вы должны предоставить аргументы encoding='utf-8' и allow_unicode=True для подпрограммы safe_dump().

Если вы когда-нибудь захотите перейти на YAML 1.2 и использовать ruamel.yaml (Отказ от ответственности: я являюсь автором этого пакета), это (гораздо более разумные) значения по умолчанию:

import sys
import ruamel.yaml

yaml = ruamel.yaml.YAML()

data = [u'EU-repr\xe6sentant udpeget']
yaml.dump(data, sys.stdout)

, что дает:

- EU-repræsentant udpeget
...