从下面的json中,在python中,我想提取值“TEXT”。所有的钥匙都是恒定的,除了未知的。未知的字符串可以是“a6784t66”或“hobvp*nfe”。未知的值是未知的,只是它将在每个json响应中处于该位置。
{
"A": {
"B": {
"unknown": {
"1": "F",
"maindata": [
{
"Info": "TEXT"
}
]
}
}
}
}
单行json
'{"A":{"B":{"unknown":{"1":"F","maindata":[{"Info":"TEXT"}]}}}}'
你如何得到“文本”的价值?(我知道如何用json.loads加载json)…但我不知道如何获取“Text”的值。谢谢。
(我不知道什么是最好的头衔。)
您可以使用递归函数挖掘每一层并用缩进打印其值
它有点长,但在上面的例子中:
您基本上把它当作一个字典,传递键来获取每个嵌套字典的值。唯一不同的部分是当您点击
maindata
时,结果值是一个列表。为了处理这个问题,我们拉动第一个元素[0]
,然后访问Info
键来获取值TEXT
。在
unknown
更改的情况下,您将用一个变量替换它,该变量表示在代码中该点的“已知”名称:如果我第一次能正确地阅读你的问题,如果你在任何时候都不知道什么是
unknown
,你可以这样做:其中
values()
是一个变量,包含:可以使用
[0]
访问的单个项目列表,然后可以按上述步骤继续。请注意,这取决于字典中只有一个项-如果有更多项,则需要调整一点。正如你所说,未知在固定的地方 你可以这样做
这样就可以了,因为只有未知的密钥才是真正的“未知”
相关问题 更多 >
编程相关推荐