【问题标题】:Saving dictionary but the keys dont save保存字典但键不保存
【发布时间】:2022-11-14 22:47:01
【问题描述】:

我有这本字典:

dic = {"111":["Gavin","email","1","2","5[111,222,333\]"],
       "222":["derek","email2","2","5","4[111,222,333]"]}

2 个键是 111222 并注意每个键有多个值, 当我将它写入文件时,它只有一个键:111 并将其他所有内容用作单个值。我如何将其写入保存键和值的文件?

我试过json,但没用。

import json

with open('text.txt', 'w') as f:
    for k, v in dic.items(): 
        f.write(str(k) + "," + str(v))

【问题讨论】:

  • Python dicts 每个键只有一个值。在您的示例中,每个键都有一个列表作为值。
  • 当然“json 没用”, 导入后您不会对它做任何事情。阅读文档以了解如何实际使用它。还请显示您的文件是什么样子,以及您期望它是什么样子。从您的代码中,您的文件应该已经包含字典中的所有键。最后,不要隐藏 python 内置函数,所以不要调用你的变量dict
  • 您需要添加 \n 新行。所有数据都还在,只需一行使用f.write(f"{k}, {v}\n")

标签: python dictionary


【解决方案1】:

正如我所说,python dicts 每个键只有一个值。如果要分别保存值的每个元素,可以循环它们。使用您的方法:

with open('text.txt', 'w') as f:
    for key, value_list in dict.items(): 
        for value in value_list:
           f.write(str(key) + "," + str(value) + "
)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多