我们在python/中有任何函数吗.Net读取复杂对象



我有一个嵌套的对象,需要一个函数来传递对象和键并返回值。

我不确定哪种方式是开始工作的最佳方式,可以在所有云提供商中使用。

示例输入

object = {“a”:{“b”:{“c”:”d”}}}
key = a/b/c

object = {“x”:{“y”:{“z”:”a”}}}
key = x/y/z
value = a

除了unicode引号,这只是python中的一个字典。

my_object = {"a":{"b":{"c":"d"}}}
print(my_object["a"]["b"]["c"])  # output: d 

如果你想把";a/b/c";格式,然后写一个函数在后台进行正常的[]访问:

def slash_access(obj, keys):
keys = keys.split("/")
current = obj
for key in keys:
current = current[key]
return current
my_object = {"a":{"b":{"c":"d"}}}
print(slash_access(my_object, "a/b/c"))

如果您正在处理Python项目,extradict是一个允许嵌套访问数据结构的第三方库,它使用"quot;事实上,但它的工作方式是这样的:

In [1]: from extradict import NestedData
In [3]: obj = NestedData({"a":{"b":{"c":"d"}}})
In [4]: key = "a.b.c"
In [5]: obj[key]
Out[5]: 'd'

您可以使用pip install extradict安装extract。免责声明:我是项目的作者和维护者

您可以对json:进行解组

import json
input_string = '{"a":{"b":{"c":"d"}}}'
output_dict = json.loads(input_value)

并使用output_dict作为字典:

output_dict["a"]
output_dict["a"]["b"]["c"]

最新更新