将数据从日志解析为json-fi

2024-09-29 17:14:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个这样格式的日志文件

{
  "box1" : {
    "item1" : "testValue1",
    "item2" : "testValue2"
  },
  "foods" : [
    {
      "orange" : "per pound",
      "price" : 2.99
    },
    {
      "rice" : "in bag",
      "price" : 1.99
      "extra-key" : "extra-Value",
      "extra-key2" : "extra-Value2",
    },
    {
      "beer" : "in box",
      "price" : 12.99
      "extra-key3" : "extra-Value3"
      "content" : None
    }
 ]
}

我想将以下值提取到python中的输出文件中:

^{pr2}$

有人能告诉我怎么做吗?在


Tags: 文件in格式extrapricericeorangeper
1条回答
网友
1楼 · 发布于 2024-09-29 17:14:28

要读取json文件,可以使用Python模块-json。它读取文件并返回存储在文件中的相应数据结构。在

因为您有一个字典,所以您可以简单地通过索引字典来访问值。在

import json

with open('logFileName') as f:
    data = json.load(f)

# Foods is a list of dictionaries, so you have to access it like that
print data['foods'][0]['orange']

请注意,您错误地指定了所需的输出格式,因为您混合了列表和字典语法。我想你,事实上,想从日志中提取一本字典。在

如果您事先不知道列表中的食物类型是什么,这是一个问题,因为很难确定字典中的哪个键是food(例如rice),而哪个键是完全不同的,例如extra-key。在

要快速了解Python,请阅读The Python Tutorial。在

相关问题 更多 >

    热门问题