我有一本看起來像這樣的字典:
{'ACC210': ['Luther, Martin', 'Spurgeon, Charles'], 'CS121P': ['Bunyan, John', 'Henry, Matthew', 'Luther, Martin'], 'CS132S': ['Calvin, John', 'Knox, John', 'Owen, John']}
我需要能夠制作如下所示的輸出:
Luther, Martin: ACC210 CS121P
Spurgeon, Charles: ACC210
Bunyan, John: CS121P
Henry, Matthew: CS121P
Calvin, John: CS132S
Knox, John: CS132S
Owen, John: CS132S
我該怎么做?
uj5u.com熱心網友回復:
您的字典結構以錯誤的方式輕松地執行此操作,因此第一步是將其反轉。
假設如下:
d = {
'ACC210': ['Luther, Martin', 'Spurgeon, Charles'],
'CS121P': ['Bunyan, John', 'Henry, Matthew', 'Luther, Martin'],
'CS132S': ['Calvin, John', 'Knox, John', 'Owen, John']
}
此代碼段將輸出您期望的內容
new_d = {}
for key, value in d.items():
for name in value:
if name in new_d:
new_d[name].append(key)
else:
new_d[name] = [key]
for key, value in new_d.items():
print(key, ':', ''.join(value))
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/375700.html
