【问题标题】:Get a FIRST value of json dictionary in python在python中获取json字典的第一个值
【发布时间】:2015-03-31 22:03:49
【问题描述】:

我有这样的 json,在 python 中。

{
    "unknown1": {
        "somekeys": "somevalues"
    }
    "unknown2": {
        "somekeys": "somevalues"
    }
    "unknown3": {
        "somekeys": "somevalues"
    }
}

有没有办法只获取 unknown1 字典?

未知数确实是未知数,并且每次都不同。 此操作的速度至关重要。

(我知道如何用 json.loads 加载 json)

【问题讨论】:

  • 您是说密钥未知吗? JSON 未排序,因此没有“第一个未知键”。
  • JSON 对象是键值对。除非您想对键进行排序,否则 JSON 对象中没有“第一个键”的概念。
  • 您所能做的就是遍历字典的所有键并跳过已知的键。
  • 但是有没有办法,也许,通过这个 json 进行迭代,以便在第一次迭代时给我 unknown1 字典或类似的东西?或者它会像遍历 python 字典一样随机?
  • 再次声明:JSON 对象是键值对。没有“第一把钥匙”的固有概念。字典也是如此。如果您希望键按指定顺序排列,则必须按照您指定的顺序遍历 sorted 键。或者使用不同的数据结构(也许是字典列表?)。

标签: python json python-2.7 dictionary


【解决方案1】:

尝试使用一些循环系统 像这样

first_value
for i in JsonFile:
    first_value = i
    break 

first_value 是第一个字典

【讨论】:

    【解决方案2】:

    不,没有办法做到这一点

    在 cmets 中,你写:

    但是有没有办法,也许,通过这个 json 进行迭代,以便在第一次迭代时给我 unknown1 字典或类似的东西?或者它会像遍历 python 字典一样随机?

    完全正确。当您使用json.load()json.loads 将json 加载到python 中时,json 字符串将转换为python dict。所以,一旦它被加载,你应该像对待任何其他 dict 一样对待它,因为它是一个。

    【讨论】:

      猜你喜欢
      • 2014-03-22
      • 1970-01-01
      • 2016-01-19
      • 2021-01-23
      • 2017-12-27
      • 2016-09-03
      • 1970-01-01
      • 1970-01-01
      • 2012-11-29
      相关资源
      最近更新 更多