首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何解决使用python获取json数据的问题

如何解决使用python获取json数据的问题
EN

Stack Overflow用户
提问于 2016-05-08 04:54:14
回答 3查看 50关注 0票数 0

我在python编程中非常新,所以我创建了下面的python脚本,以便在包含3000或更多json文件的文件夹中迭代,我不知道如何在这300个json文件中迭代以避免手动放入脚本中,并且我需要在json文件所在的位置放置一个特定的路径,并且我不知道如何声明它。

代码语言:javascript
复制
import json
all_results = {}
json_file_list = ['1.json', '2.json']
for file in json_file_list:
     with open(file) as json_file:
    json_data = json.load(json_file)
    for key, value in json_data.iteritems():
       if 'result' in value:
            all_results[key] = value['result']
return all_results

运行我的python脚本后,我有以下错误:

代码语言:javascript
复制
File "getResult.py", line 20
  return all_results
SyntaxError: 'return' outside function

这就像我的jsons文件

{“igt@gem_reloc_overflow@单溢出”:{ "type":"TestResult",“命令”:--运行子测试单溢出“,"dmesg":”,“环境”:“PIGLIT_SOURCE_DIR=\"/home/gfx/intel-graphics/intel-gpu-tools/piglit\"",”mixed_glx_egl\ "err":"(gem_reloc_overflow:19562)关键:测试断言失败函数reloc_tests,文件gem_reloc_overflow.c:260:\n(gem_reloc_overflow:19562)危急:失败断言:gem_execbuf(fd,关键:错误:-22 != -14\n子测试单溢出失败。\n*调试*\n(gem_reloc_overflow:19562)调试: gem_reloc_overflow.c:260:\n(gem_reloc_overflow:19562):测试断言失败函数reloc_tests,文件gem_reloc_overflow.c:260:\n(gem_reloc_overflow:19562)关键:失败断言:__gem_execbuf(fd )== -14\n(gem_reloc_overflow:19562)关键:错误:-22 != -14\n*结束*\n“,”gem_reloc_overflow:19562“:null,"out":"IGT-Version: 1.14-g1e9a3ac (x86_64) (Linux: x86_64 x86_64)\nStack跟踪:\n #0 __igt_fail_assert+0x101\n #1 reloc_tests+0x6d6\n 2+0x6d6\n nSubtest单溢出: FAIL (8.469s)\n","pid":19562,“结果”:“失败”,“返回代码”:99,“子测试”:{ "__type":“子测试”},“时间”:{ "type":"TimeAttribute","end":1462072402.5360818,"start":1462072393.7328644 },"traceback":null }

欢迎任何帮助,谢谢

EN

回答 3

Stack Overflow用户

发布于 2016-05-08 04:58:33

也许您想要print all_results而不是return all_results。或者你可以在找到它们的时候一个一个地打印。

票数 0
EN

Stack Overflow用户

发布于 2016-05-08 05:03:30

要迭代目录中的文件而不必手动输入文件名,可以使用os.walk()os.listdir()。有关更多详细信息,请参阅this question

语法错误似乎是不言而喻的。您有一个不在函数定义中的return语句;这是无效的Python。如果要输出结果,请使用print

票数 0
EN

Stack Overflow用户

发布于 2016-05-08 06:54:12

将JSON文件目录的路径存储到变量

代码语言:javascript
复制
mypath = "/home/json_file_directory"

使用os.listdir()列出所有json文件。

一旦您有json文件名,请使用

代码语言:javascript
复制
 os.path.join(mypath,filename) #to get the exact path of file.
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37096347

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档