【问题标题】:How to create a series of JSON objects given a list in python?python - 如何在给定列表的python中创建一系列JSON对象?
【发布时间】:2020-06-07 12:46:52
【问题描述】:

基本上需要使用 python 为列表中的每个项目创建一个新的 JSON 对象。我能够输出列表的内容,但想为我输出的每个列表项创建一个新的 JSON 对象。我该怎么做呢?

我的代码:

subfolders = [ f.path for f in os.scandir(rootdir) if f.is_dir() ]
subfolders = [sub.replace(rootdir + '\\', '') for sub in subfolders]

with open('summary.json', 'w') as f:
    json.dump(subfolders, f, indent=2)

当前样本输出:

[
  "subfolder1",
  "subfolder2",
  "subfolder3"
]

所需的样本输出:

{
  "subfolder1": {},
  "subfolder2": {},
  "subfolder3": {}
}

PS:在每个 JSON 对象中,我需要填充这些子文件夹中保存的信息,这些子文件夹也存储在列表中。对此的任何帮助也将不胜感激,在此先感谢。

【问题讨论】:

    标签: python json list file object


    【解决方案1】:

    只需在转换为 json 之前创建对象。

    obj = { name:{} for name in subfolders }
    ...
    json.dump(obj, f, indent=2)
    

    【讨论】:

    • 这正是我需要的,谢谢。我仍然很好奇如何将信息填充到这些对象中。本质上,这些子文件夹中的每一个都有 2 个文件,需要将它们的内容写入创建的对象中。
    • 这需要是一个新问题。看看你能不能问一个只关注这部分问题的人。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-25
    • 2022-11-05
    • 1970-01-01
    • 2013-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多