【问题标题】:Using python to search JSON使用python搜索JSON
【发布时间】:2018-04-23 02:22:12
【问题描述】:

我搜索了一个特定的 Github API,并生成了一个 JSON 格式的结果。格式如下:

[
  {
    "days": [
      0,
      0,
      0,
      0,
      0,
      0,
      0
    ],
    "total": 0,
    "week": 1478995200
  },
  {
    "days": [
      0,
      1,
      2,
      0,
      0,
      0,
      0
    ],
    "total": 3,
    "week": 1479600000
  },

等等……

我正在尝试使用 Python 在这本词典中搜索“总数”最高的一周,但我不确定如何执行此操作。如果您能提供任何帮助,我将不胜感激。

【问题讨论】:

  • 你有研究过如何处理json吗?您是否阅读过 json 模块的文档?那将是第一步:docs.python.org/3.6/library/json.html
  • 您拥有的是对象列表(字典)。迭代列表,找到字段total最大的对象,这就是你所追求的
  • 虽然这并不像看起来那么容易。

标签: python json api


【解决方案1】:
data = [
  {
    "days": [
      0,
      0,
      0,
      0,
      0,
      0,
      0
    ],
    "total": 0,
    "week": 1478995200
  },
  {
    "days": [
      0,
      1,
      2,
      0,
      0,
      0,
      0
    ],
    "total": 3,
    "week": 1479600000
  }
]

#  Search for the maximum total
max_total = max([item["total"] for item in data])

## Get the items with this maximum total
max_items = [item for item in data if item["total"]==max_total]

##  Using key argument of max function if you only want one item
max(data, key=lambda item:item['total'])

【讨论】:

    猜你喜欢
    • 2022-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-18
    • 2012-10-21
    • 2016-10-03
    • 1970-01-01
    相关资源
    最近更新 更多