python - 在 Python 中反转组/项目
问题描述
我有一张这样的桌子:
团体 | 物品 |
---|---|
一个 | 甲,乙,丙 |
乙 | 乙、丙、丁 |
我想转换成这样:
物品 | 团体 |
---|---|
一个 | 一个 |
b | 甲,乙 |
C | 甲,乙 |
d | 乙 |
实现这一目标的最佳方法是什么?
谢谢!!
解决方案
使用字典,您通常会像这样处理它:
table = {'A': ['a', 'b', 'c'], 'B': ['b', 'c', 'd']}
revtable = dict()
for v,keys in table.items():
for k in keys:
revtable.setdefault(k,[]).append(v)
print(revtable)
# {'a': ['A'], 'b': ['A', 'B'], 'c': ['A', 'B'], 'd': ['B']}
推荐阅读
- html - 在 Ruby 中使用 Nokogiri 抓取特定标题
- google-sheets - “收到无效的 JSON 有效负载。” 创建新工作表时
- swift - FloatingPoint 扩展 - 与其他 FloatingPoint 类型一起初始化
- php - 关于php7统一变量语法、嵌套函数
- mysql - 在 MySQL 中使用条件查找下一行
- python - 如何在 Tkinter 应用程序中启用对表情符号的支持?
- assembly - 寄存器地址存储在另一个寄存器中(PIC18F45K50)
- c# - C# 保存有关文件的附加信息
- onesignal - OneSignal - 在哪里可以找到现有项目的“高级选项部分”
- node.js - 在 nodejs 中流式传输 zip 文件