使用python解析json文件的目录

时间:2016-09-16 02:31:09

标签: python json parsing

我一直在寻找如何做到这一点,但我不能。 我有一个.json文件的目录,我应该解析每个。 我知道我必须使用glob和os。 我觉得它背后的逻辑是循环遍历目录,当读取每个文件时提取所需的数据,但我找不到任何地方可以帮助我,也不知道语法。 如果它反对堆栈规则,人们认为这是我要求家庭作业的答案,我可以在别处搜索,这不是我不明白的功课。

2 个答案:

答案 0 :(得分:5)

假设您的JSON文件以.json扩展名命名,并且它们与您运行脚本的目录位于同一目录:

import json
from glob import glob

data = []
for file_name in glob('*.json'):
    with open(file_name) as f:
        data.append(json.load(f))

这将为您提供已解析的JSON对象(字典和/或列表)的列表。

如果您需要访问另一个目录中的文件,您可以像这样构建glob模式:

import os.path

pattern = os.path.join('/path/to/json/files', '*.json')
for file_name in glob(pattern):
    ....

答案 1 :(得分:0)

我知道这是一个古老的问题,但我一直在努力解决非常相似的问题。我最终为此编写了自己的脚本: https://github.com/tmdag/makedirtree

使用Unix'tree'命令创建目录并使用

重新创建目录更加容易
pathlib.Path(s_path).mkdir(parents=True, exist_ok=True)