为了账号安全,请及时绑定邮箱和手机立即绑定

python 迭代dict写入.txt文本

python 迭代dict写入.txt文本

asdhjhg 2017-06-04 22:53:56
把一个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()

结果如图:

//img1.sycdn.imooc.com//593663950001f01c14260707.jpg

个人分析:出现乱码,可能是由于一个关键字后面只能跟一个值,或者是一类类型相同的值,你的后面跟了多个值,而且这些值得类型不相同,因此可以考虑给后面的value加上'""'

查看完整回答
反对 回复 2017-06-06
?
产品经理不是经理

TA贡献481条经验 获得超143个赞

59343327000187f205400960.jpg

5934333100018d3505400960.jpg
没出现你说的问题啊

查看完整回答
反对 回复 2017-06-05
  • 2 回答
  • 0 关注
  • 11092 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信