如何将嵌套元素动态添加到字典

时间:2019-07-03 04:01:43

标签: python dictionary

有一个dict t = {} 何时

count = 1 
t = {'type': 'array', 'items': {}}

count = 2
t = {'type': 'array', 'items': {'type': 'array', 'items': {}}}

count = 3
{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'array', 'items': {}}}}

如何动态获取t值?

4 个答案:

答案 0 :(得分:0)

您可以使用递归:

400 Bad Request, The SSL certificate error

def build(count, s = {}):
  return {'type': 'array', 'items': s if count == 1 else build(count-1)}

输出:

for i in range(1, 4):
  print(build(i))

答案 1 :(得分:0)

使用简单的迭代:

count = 3
t = {}
for _ in range(count):
    t = {'type': 'array', 'items': t}

print(t)
#Output:
{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'array', 'items': {}}}}

答案 2 :(得分:0)

尚不清楚是否需要某种循环动作,但是至少这里是一种硬连线的方式。

t = {'type': 'array', 'items': {}}

count = 1

t.update({'items': t}) 

count = 2

t['items'].update({'items': t}) 

count = 3

t['items']['items'].update({'items': t}) 

答案 3 :(得分:0)

    def dynamically_add(count):
        dict ={}
        for i in range(1,count+1):
            dict = {'type': 'array', 'items': dict}
        return dict
        #print(dynamically_add(2))