写一个字典到文件

时间:2017-04-15 23:54:02

标签: python python-3.x

我无法使用json.dump使用import codecs if __name__ == '__main__': k = dict() k['tony ta'] = 4 k['tt '] = 5 l = list(k) with codecs.open('text.txt', 'w', 'utf-8') as f: for i in range (0, len(l)): f.write('\n'+(l[i]) + ' ' + str(k[l[i]])) 来编写字典,因为希伯来字母和文件只包含英文字母的垃圾。

open

使用编解码器我能够正确编写并获得我想要的结果。对于此演示,我使用window.close()。有更方便的方法吗?

  

的text.txt   
tony ta 4   
tt 5

有没有更好的方法,而不是必须将我的字典转到列表,然后访问字典以找到值?

2 个答案:

答案 0 :(得分:1)

因此,我没有将字典转换为列表,而是将其转换为字符串,然后进行了一些字符串操作。我不确定你是否会认为这是一个更好的"或者更方便的"方式。

import codecs
import re

if __name__ == '__main__':
    k = dict()
    k['tony ta'] = 4
    k['tt '] = 5
    with codecs.open('text.txt', 'w', 'utf-8') as f:
        f.write(re.sub(r"[{}:']",'',str(k).replace(', ','\n')))

答案 1 :(得分:1)

你可以使用:

with codecs.open('text.txt', 'w', 'utf-8') as f:
    for key in k:
        f.write("%s %s\n", key, str(k[key]))