把一個(gè)dict寫(xiě)入txt文本?d?=?{'誒瑞克'?:?('男',?'18',?('琳達(dá)',?'女',?'1328638'),?'南卡羅來(lái)州',?'圣克塔塔爾',?'CS')}我寫(xiě)的時(shí)候總是不成功,要么txt文件里出現(xiàn)亂碼(已經(jīng)寫(xiě)了中文標(biāo)注,指定編碼為utf8),要么出現(xiàn)16進(jìn)制(\xe6\xae\.............)最終希望在txt中顯示為'''
誒瑞克?:?男,?18,?(琳達(dá),?女,?1328638),?南卡羅來(lái)州,?圣克塔塔爾,?CS
'''
2 回答

慕客2057
TA貢獻(xiàn)1條經(jīng)驗(yàn) 獲得超0個(gè)贊
通過(guò)給dict.value加上“”,就可以實(shí)現(xiàn),例如:
d?=?{'誒瑞克'?: "('男',?'18',?('琳達(dá)',?'女',?'1328638'),?'南卡羅來(lái)州',?'圣克塔塔爾',?'CS')"}
d = {'誒瑞克' : "('男', '18', ('琳達(dá)', '女', '1328638'), '南卡羅來(lái)州', '圣克塔塔爾', 'CS')"}
f=open('F:\output.txt','w')
for key,value in d.items():
? ? f.write(key+':'+str(value))
? ? f.write('\n')
f.close()
結(jié)果如圖:
個(gè)人分析:出現(xiàn)亂碼,可能是由于一個(gè)關(guān)鍵字后面只能跟一個(gè)值,或者是一類(lèi)類(lèi)型相同的值,你的后面跟了多個(gè)值,而且這些值得類(lèi)型不相同,因此可以考慮給后面的value加上'""'
添加回答
舉報(bào)
0/150
提交
取消