把一个dict写入txt文本?d = {'诶瑞克' : ('男', '18', ('琳达', '女', '1328638'), '南卡罗来州', '圣克塔塔尔', 'CS')}我写的时候总是不成功,要么txt文件里出现乱码(已经写了中文标注,指定编码为utf8),要么出现16进制(\xe6\xae\.............)最终希望在txt中显示为'''
诶瑞克 : 男, 18, (琳达, 女, 1328638), 南卡罗来州, 圣克塔塔尔, CS
'''
2 回答
慕客2057
TA贡献1条经验 获得超0个赞
通过给dict.value加上“”,就可以实现,例如:
d = {'诶瑞克' : "('男', '18', ('琳达', '女', '1328638'), '南卡罗来州', '圣克塔塔尔', 'CS')"}
d = {'诶瑞克' : "('男', '18', ('琳达', '女', '1328638'), '南卡罗来州', '圣克塔塔尔', 'CS')"}
f=open('F:\output.txt','w')
for key,value in d.items():
f.write(key+':'+str(value))
f.write('\n')
f.close()
结果如图:
个人分析:出现乱码,可能是由于一个关键字后面只能跟一个值,或者是一类类型相同的值,你的后面跟了多个值,而且这些值得类型不相同,因此可以考虑给后面的value加上'""'
添加回答
举报
0/150
提交
取消