如何使用for循环创建指定结构的嵌套字典?
可以用for循环创建嵌套字典
当然可以,这里提供两种实用的实现方式:
方法一:逆序遍历构建
从最内层的空字典开始,逐步向外嵌套,代码简洁直观:
keys = [0, 1, 2] current_dict = {} for key in reversed(keys): current_dict = {key: current_dict} print(current_dict) # 输出: {0: {1: {2: {}}}}
逻辑说明:每次循环将当前字典包裹在新字典中,键为遍历到的元素,从最内层的{}开始,依次嵌套得到最终的多层结构。
方法二:正向遍历跟踪层级
通过跟踪当前操作的字典层级,逐步向内创建子字典:
keys = [0, 1, 2] test = {} current_level = test # 先处理前两个键,逐层创建子字典 for key in keys[:-1]: current_level[key] = {} current_level = current_level[key] # 给最内层的最后一个键赋值空字典 current_level[keys[-1]] = {} print(test) # 输出: {0: {1: {2: {}}}}
逻辑说明:从最外层字典起步,每一步创建新的子字典并切换到该层级,最后给最内层的目标键赋值空字典。
内容的提问来源于stack exchange,提问作者Sungmin Son
相关产品推荐
相关产品推荐

