【发布时间】:2016-08-26 23:51:58
【问题描述】:
我正在尝试使用 pprint 函数漂亮地打印以下数据多次出现的 JOSN 数据文件。
数据文件的内容
{"_abcd": {"options": {}, "module": "xxxx", "crawler": "1234567890"}, "hash": 1048951621, "os": null, "ip": sgdgdfd , "isp": "ASGSFDF", "port": YYY, "hostnames": [], "location": {"city": "rtyf", "region_code": "00", "area_code": null, "经度”:111.23344,“国家代码3”:“xyz”,“国家名称”:“qazwsx”,“邮政编码”:空,“dma_code”:空,“国家代码”:“yy”,“纬度”:1.11111},“时间戳” ": "XXXXX", "domains": [], "org": "FFFFF", "data": "单元 ID: 0\n-- 从站 ID 数据: \t()\n\n单元 ID: 255\ n-- 从站 ID 数据:\t()\n\n", "asn": "44444", "transport": "tcp", "ip_str": "1.2.3.4"} {"_abcd": {"options": {}, "module": "yyyy", "crawler": "999999"}, "hash": 35473835, "os": null, "ip": sgdgdfd, "isp ": "TYUUF", "port": YYY, "hostnames": [], "location": {"city": "wewd", "region_code": "00", "area_code": null, "longitude": 222.3456,“country_code3”:“xyz”,“country_name”:“qazwsx”,“postal_code”:null,“dma_code”:null,“country_code”:“yy”,“latitude”:1.11111},“timestamp”:“ XXXXX", "domains": [], "org": "DDDD", "data": "Unit ID: 0\n-- 从站 ID 数据: \t()\n\nUnit ID: 255\n--从站 ID 数据:\t()\n\n", "asn": "44444", "transport": "tcp", "ip_str": "4.3.2.1"} ...更多与上述相同的数据
我在这个论坛找到了代码并修改它以将输出写入文件:
import json
from pprint import pprint
with open('data.json') as data_file:
data = json.load(data_file)
with open('outfile.json,'w') as data_out
pprint(data,stream=data_out)
如果日期文件只包含 1 次出现的数据,它会正常工作,并且在出现多次时会失败。
如何修改代码以使其适用于多次出现的数据?
【问题讨论】:
-
当您提出问题时,文本区域右侧有一个橙色的大如何格式化框,其中包含有用的信息。还有一个完整的格式化辅助工具栏。还有一个 [?] 按钮提供格式化帮助。 和一个预览区域,位于文本区域和发布您的问题按钮(这样您就必须扫描过去才能找到该按钮)显示您的帖子发布后的样子。使您的帖子清晰,并证明您花时间这样做,可以提高您获得好答案的机会。
标签: json