如何将含多字符串的Python字典转换为二维列表
解决方案
核心思路是先清理每个值里的方括号,拆分出完整单词,再和对应键组合成元组,同时跳过空值的条目。
代码实现
original_dict = {"My": "[dog, cat, bird]", "is":"[cute]", "Hi":[], "Hello":"[World]"} result = [] for key, value in original_dict.items(): # 处理空列表的情况,直接跳过 if value == []: continue # 去掉字符串首尾的方括号,再按逗号分割 items = value.strip('[]').split(',') # 遍历每个拆分后的元素,去掉前后空格,和键组成元组 for item in items: cleaned_item = item.strip() # 避免空字符串(比如值为"[]"的情况) if cleaned_item: result.append((key, cleaned_item)) print(result)
代码说明
- 遍历字典的
items()获取每个键值对 - 遇到值为空列表时直接跳过,不生成元组
- 对带方括号的字符串,用
strip('[]')去掉首尾的方括号,再用split(',')按逗号分割成单个元素 - 每个元素用
strip()去掉前后的空格,确保得到干净的单词 - 最后把键和清理后的单词组成元组,添加到结果列表里
运行后输出:
[('My', 'dog'), ('My', 'cat'), ('My', 'bird'), ('is', 'cute'), ('Hello', 'World')]
内容的提问来源于stack exchange,提问作者hi_it'sme
相关产品推荐
相关产品推荐

