【发布时间】:2020-03-04 18:29:17
【问题描述】:
我有一个像这样的 json 文件:
{
"a": 0.7615894039735099,
"a.b": 0.7152317880794702,
"a.c": 0.026490066225165563
"a.b.d": 0.0001
"f": 0.002
"f.g": 0.00003
"h.p.q": 0.0004
}
说整个字典被称为“root”
我想这样使用它
if "c" in root["a"] and if root["a"]["c"] > 0.0002:
print("something")
有人可以帮忙吗? 非常感谢!
【问题讨论】:
-
普通python字典的数据结构不能支持你的用例。由于您将
float存储在root["a"]中,因此在执行"c" in root["a"]语句时它将返回TypeError,因为float类型不可迭代。 -
我认为,首先您需要重新构造 JSON 数据以使其嵌套。
-
如果你能以任何方式将'a'和'c'键存储在一个数组中你可以使用这个
root['.'.join(['a','c'])]
标签: python json dictionary