2

例如我有一个字典如下

demo_dict = {1:{2:{3:{4:5}}}}

现在我在列表中有值 5 的路径,如下所示

path = [1,2,3,4]

现在通过使用该路径,我想将其设置为

demo_dict[1][2][3][4] # expected
4

1 回答 1

3

您可以使用简单的递归:

demo_dict = {1:{2:{3:{4:5}}}}
path = [1,2,3,4]
def get_val(d, _path):
  return d[_path[0]] if not _path[1:] else get_val(d[_path[0]], _path[1:])

print(get_val(demo_dict, path))

输出:

5
于 2018-07-12T15:49:32.497 回答