如何使用for循环在Python中打开多个json文件?

时间:2019-04-29 13:19:42

标签: python json for-loop

对于学校中的数据挑战,我们需要使用python打开许多json文件。有太多无法手动打开。有没有办法用for循环打开它们?

这是我打开一个json文件并将其设置为数据框(可以正常工作)的方式。

file_2016091718 = '/Users/thijseekelaar/Downloads/airlines_complete/airlines-1474121577751.json'

json_2016091718 = pd.read_json(file_2016091718, lines=True)

Here is a screenshot of how the map where the data is in looks (click here)

2 个答案:

答案 0 :(得分:0)

是的,您可以使用os.listdir列出目录中的所有json文件,为所有文件创建完整路径,并使用os.path.join使用完整路径打开json文件

import os
import pandas as pd
base_dir = '/Users/thijseekelaar/Downloads/airlines_complete'

#Get all files in the directory

data_list = []
for file in os.listdir(base_dir):

    #If file is a json, construct it's full path and open it, append all json data to list
    if 'json' in file:
        json_path = os.path.join(base_dir, file)
        json_data = pd.read_json(json_path, lines=True)
        data_list.append(json_data)

print(data_list)

答案 1 :(得分:0)

尝试一下:

import os

# not sure about the order
for root, subdirs, files in os.walk('your/json/dir/'):
    for file in files:
        with open(file, 'r'):
            #your stuff here