使用pyjq,我能够解析json文件中的值。我需要格式化输出位更多,这样可以导出到csv。在
import json
import csv
import pyjq
emp_data = open('example.json', 'r')
emp_data_parsed = json.loads(emp_data.read())
emp = pyjq.all ('.base[].base[].uid, .base[].base[].name', emp_data_parsed)
print emp
我得到的输出
^{pr2}$期望输出如下,以便可以写入csv文件。在
uid,name
'2da21174-0af8-4b5b-b02e-2957a24d70e1','None'
'fcc5a2c8-3a78-4cc5-9fd3-e7bd59eb36ba','Tommy'
'4ecf6450-7307-466c-bf19-663ba2fbaf69','Sam'
以下是示例.json文件
example.json
{
"base": [
{
"base": [
{
"item-number": 1,
"type": "access-item",
"uid": "2da21174-0af8-4b5b-b02e-2957a24d70e1",
"usage": {
"last-date": {
"iso-8601": "2018-03-19T03:58-0500",
},
},
"item-number": 2,
"name": "Tommy",
"type": "access-item",
"uid": "fcc5a2c8-3a78-4cc5-9fd3-e7bd59eb36ba",
"item-number": 3,
"name": "Sam",
"type": "access-item",
"uid": "4ecf6450-7307-466c-bf19-663ba2fbaf69",
"usage": {
"last-date": {
"iso-8601": "2018-03-21T07:21-0500",
},
},
}
],
}
],
}
我不确定是不是有别的办法。如果是,请告诉我。在
有趣的是,我知道^{} ,Python包装器是个好主意。在
我使用
jq
进行数据处理。还有grep
,head
等:)当我需要使用CSV时,我宁愿将CSV写入JSONL(反之亦然)程序一次,然后将其用作shell管道中的另一个工具。在用法(我不得不稍微修改一下
^{pr2}$example.json
):无法使用
pyjp
进行测试,从Project description猜测,请尝试:将JSON循环如下:
^{pr2}$输出已准备就绪,
csv.DictWriter
读取csv.DictWriter,例如:相关问题 更多 >
编程相关推荐