Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/310.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
JSON(列表,而不是字典)到csv文件-PYTHON_Python_Json_Csv - Fatal编程技术网

JSON(列表,而不是字典)到csv文件-PYTHON

JSON(列表,而不是字典)到csv文件-PYTHON,python,json,csv,Python,Json,Csv,我正在尝试使用python将JSON文件转换为csv 我尝试了将数据放入字典的方法,但是我的JSON文件在列表中,因此它永远不会工作。它不接受字符串索引 import json from collections import OrderedDict with open('RA_1.json', 'r') as f: data_dict = json.load(f) for data in data_dict: print(data['result']['specific_is

我正在尝试使用python将JSON文件转换为csv

我尝试了将数据放入字典的方法,但是我的JSON文件在列表中,因此它永远不会工作。它不接受字符串索引

import json
from collections import OrderedDict

with open('RA_1.json', 'r') as f:
    data_dict = json.load(f)

for data in data_dict:
    print(data['result']['specific_issues']['bills_by_algo'] ['sponsor'])
“这是我的JSON文件:”

“还有更多”

“这是错误:”

--------
TypeError回溯(最近一次调用上次)
在里面
6.
7对于数据目录中的数据:
---->8打印(数据['result']['specific_issues']['bills_by_algo']['sponsor'])
TypeError:字符串索引必须是整数

它是因为
特定的问题
是一个字典列表!与algo提交的票据相同的问题

您必须更新循环代码,以遍历字典列表,并在这些单独的dict中找到键

import json
from collections import OrderedDict

with open('RA_1.json', 'r') as f:
    data_dict = json.load(f)

    for data in data_dict['result']:
        specific_issues = data['specific_issues']

        for issue in specific_issues:
            print(issue['bills_by_algo'])

这是因为
specific\u issues
是一个字典列表!与algo提交的票据相同的问题

您必须更新循环代码,以遍历字典列表,并在这些单独的dict中找到键

import json
from collections import OrderedDict

with open('RA_1.json', 'r') as f:
    data_dict = json.load(f)

    for data in data_dict['result']:
        specific_issues = data['specific_issues']

        for issue in specific_issues:
            print(issue['bills_by_algo'])

数据目录中的数据的
不适合您使用。当您从dict进行迭代时,您会得到它的键,而不使用它的
items()
方法。在这里,您仅在
数据中获得字符串“result”(我假设是这样,因为您没有给出文件的结尾)

因此,删除
指令的
,只写:

print(data_dict['result']['specific_issues']['bills_by_algo']['sponsor'])

数据目录中的数据的
不适合您使用。当您从dict进行迭代时,您会得到它的键,而不使用它的
items()
方法。在这里,您仅在
数据中获得字符串“result”(我假设是这样,因为您没有给出文件的结尾)

因此,删除
指令的
,只写:

print(data_dict['result']['specific_issues']['bills_by_algo']['sponsor'])