从文件名及其内容生成 JSON 文件

我是 python 新手,找不到足够接近的答案来让我弄清楚。我正在尝试生成一个 json 文件,其中包含以 .txt 扩展名结尾的当前目录文件名作为节点,以及这些文件的内容作为文件名节点内的列表。

例如:

node1.txt 包含

foo
bar

和 node2.txt 包含

test1
test2

输出应如下所示:

{
  "node1": [
     "foo","bar"
   ],"node2": [
     "test1","test2"
   ]
}


diankan2009 回答:从文件名及其内容生成 JSON 文件

使用 pathlibjson 模块和一个简单的循环...

import pathlib
import json

data = {}
for node in pathlib.Path('.').glob('node*.txt'):
    with open(node,'r') as fp:
        data[node.stem] = [line.strip() for line in fp.readlines()]

print(json.dumps(data,indent=4))

输出:

{
    "node1": [
        "foo","bar"
    ],"node2": [
        "test1","test2"
    ]
}
本文链接:https://www.f2er.com/2081.html

大家都在问