我如何写从JSON文件到CSV文件在Python过滤的结果?



我正在尝试制作一个程序,可以将过滤后的JSON文件的结果保存为CSV。现在我的函数只保存JSON的密钥到CSV文件。

理想情况下,我希望函数接受两个参数:它正在搜索的column (key);和它正在搜索的项(值)。

这是我当前的功能:

def save_csv(key, value):
with open('db.json') as json_file:
info = json.load(json_file)
test = info['data']
csv_file = open('test.csv', 'w')
csv_writer = csv.writer(csv_file)
count = 0
for e in test:
if count == 0:
header_csv = e.keys()
csv_writer.writerow(header_csv)
count += 1
for e in key:
if e == value:
csv_writer.writerow(e.values())
csv_file.close()

我怎么能改变这个功能,使其保存在CSV中过滤的结果?

无论我尝试做什么更改,它只会将密钥保存到CSV的头部。我过滤的结果都不会保存到CSV。

def save_csv(key, value):
with open('db.json') as json_file:
info = json.load(json_file)
test = info['data']
with open('test.csv', 'w', newline='') as csv_file:
csv_writer = csv.writer(csv_file)
for n,v in enumerate(test):
if not n:
header_csv = e.keys()
csv_writer.writerow(header_csv)
if key in v and v.get(key)==value:
csv_writer.writerow(e.values())

相关内容

  • 没有找到相关文章

最新更新