Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过在目录中循环加载Python2.7中的多个.json文件_Python_Json_Python 2.7 - Fatal编程技术网

通过在目录中循环加载Python2.7中的多个.json文件

通过在目录中循环加载Python2.7中的多个.json文件,python,json,python-2.7,Python,Json,Python 2.7,我在一个目录中有三个.json文件,我正试图通过这个目录循环加载所有三个.json文件。然而,发生了一些有趣的事情:代码不会产生错误,但它只加载三个.json文件中的一个。我可以看到它之所以这样做,是因为我将json.load函数分配给一个变量,然后在解释器中输入变量['someKey']['someInnerKey']。.json文件有一个嵌套级别 下面是我正在使用的代码。我花了一些时间在这里搜索了很多关于阅读和打开.json文件的帖子,但到目前为止我还没有找到一篇“啊哈!”的帖子。我会继续挖

我在一个目录中有三个.json文件,我正试图通过这个目录循环加载所有三个.json文件。然而,发生了一些有趣的事情:代码不会产生错误,但它只加载三个.json文件中的一个。我可以看到它之所以这样做,是因为我将json.load函数分配给一个变量,然后在解释器中输入变量['someKey']['someInnerKey']。.json文件有一个嵌套级别

下面是我正在使用的代码。我花了一些时间在这里搜索了很多关于阅读和打开.json文件的帖子,但到目前为止我还没有找到一篇“啊哈!”的帖子。我会继续挖掘,但如果有人有任何建议或提示,我将不胜感激

import json, os  
for filename in os.listdir('D:/path1/path2/'):
    if filename.endswith('.json'):
        with open(os.path.join('D:/path1/path2/',filename)) as json_file:
            variable = json.load(json_file)
尝试:


然后,您的
变量
字典将包含加载的json,文件名作为键,而不仅仅是在每次迭代中覆盖分配给
变量的
变量

,因此覆盖以前的计算sok-这是有意义的。谢谢嘿,德鲁·G.-这很有效,很有道理。我可以看到带有variables.keys()的.json文件,并且可以访问每个文件中的子键和子键。谢谢
import json, os  

variables = {}

for filename in os.listdir('D:/path1/path2/'):
    if filename.endswith('.json'):
        with open(os.path.join('D:/path1/path2/',filename)) as json_file:
            variables[filename] = json.load(json_file)