如何将Terraform(HCL)嵌套对象列表展平为独立对象列表
展平嵌套的对象列表
需求说明
你需要将嵌套结构的secret_list展平,把原列表中每个对象内的顶级键值对,各自拆分为独立对象,最终得到包含3个独立对象的列表。
核心实现逻辑
通过两层遍历完成展平:
- 第一层遍历原列表中的每个嵌套对象
- 第二层遍历该嵌套对象的每个键值对,将单个键值对封装为新对象,添加到结果列表中
Python 示例代码
# 原始嵌套列表 secret_list = [ { 'secret1': {}, 'secret2': {} }, { 'secret3': {} } ] # 初始化空列表用于存储展平后的结果 flattened_list = [] # 两层遍历实现展平 for nested_obj in secret_list: for key, value in nested_obj.items(): flattened_list.append({key: value}) # 输出展平后的列表 print(flattened_list)
展平后的结果
secret_list = [ { 'secret1': {} }, { 'secret2': {} }, { 'secret3': {} } ]
通用适配说明
这个逻辑可以适配大多数编程语言,只需要对应调整遍历语法即可——比如在JavaScript中可以用flatMap结合Object.entries实现,核心都是拆分嵌套层级,将每个顶级键值对独立封装。
内容的提问来源于stack exchange,提问作者ZhengTian
相关产品推荐
相关产品推荐

