我正在尝试在Python中读取以下YAML文件:
countries:
IT:
"Italia"
PT:
"Portugal"
ES:
"España"
PE:
"Perú"
FR:
"France"
MX:
"México"
BR:
"Brasil"
CO:
"Colombia"
CL:
"Chile"
ZA:
"South Africa"
使用此简单代码:
import yaml
with open('file.yaml') as file:
countries = yaml.load(file, Loader='yaml.FullLoader')
print(countries)
但是我得到的结果如下:
{'countries': {'IT': 'Italia', 'PT': 'Portugal', 'ES': 'España', 'PE': 'Perú', 'FR': 'France', 'MX': 'México', 'BR': 'Brasil', 'CO': 'Colombia', 'CL': 'Chile', 'ZA': 'South Africa'}}
如您所见,所有的重音符号和特殊字符(例如“ñ”)都被弄乱了。知道为什么以及如何解决它吗?
我正在使用Python 3.7
谢谢。
from gensim.utils import deaccent
mydict={'countries': {'ES': 'España', 'PE': 'Perú', 'MX': 'México', 'ZA': 'South Africa'}}
for key, value in mydict.items():
for k,v in value.items():
print(deaccent(value[k]))
输出:
Espana
Peru
Mexico
South Africa