如何在Python中按指定格式打印含列表值的字典
字典键值合并为嵌套列表的实现方法
要把给定的字典转换为要求的嵌套列表格式,核心思路是遍历字典的每个键值对,将键作为子列表的第一个元素,再拼接对应的值列表,具体可以通过以下两种方式实现:
方法一:列表推导式(简洁写法)
利用Python的列表推导式,一行代码完成转换:
original_dict = {'eat': ['tea', 'ate'], 'tan': ['nat']} output = [[key] + value for key, value in original_dict.items()] print(output) # 输出: [['eat', 'tea', 'ate'], ['tan', 'nat']]
解释:
original_dict.items()会返回字典的所有键值对元组(如('eat', ['tea', 'ate']))[key]将单个键转为单元素列表,再和value列表相加,得到合并后的子列表- 所有子列表最终被收集到外层大列表中
方法二:普通循环写法(更直观)
如果觉得列表推导式不够直观,也可以用普通循环逐步构建结果:
original_dict = {'eat': ['tea', 'ate'], 'tan': ['nat']} output = [] for key, value in original_dict.items(): sub_list = [key] # 先把键放入子列表 sub_list.extend(value) # 追加对应的值列表元素 output.append(sub_list) # 将子列表加入结果 print(output)
你之前尝试的items()方法其实是正确的方向,只是需要把键和值列表进行合并,而不是单独处理键或值。
内容的提问来源于stack exchange,提问作者brocodile
相关产品推荐
相关产品推荐

