簡體   English   中英

Python:如何過濾列表的多個字典?

[英]Python: How to filter through multiple dictionaries of lists?

我有以下字典。 我想過濾它們以生成一個字符串為 output。 實現這一目標的最佳方法是什么?

uw = {
    "name": ["uw1", "uw2", "uw3", "uw4"],
    "code": [1135, 1134, 1133, 1132],
}

tp = {
    "name": ["tp1", "tp2", "tp3", "tp4"],
    "code": [1000, 1001, 1002, 1003]
}

uw_val = "uw3"
tp_val = "tp4"

Output

1133-1003

您可以使用zip function

d1 = dict(zip(uw['name'], uw['code']))
d2 = dict(zip(tp['name'], tp['code']))

print(f'{d1["uw3"]}-{d2["tp4"]}')

使用 index() 如果使用 join 將數字轉換為字符串

uw = {
    "name": ["uw1", "uw2", "uw3", "uw4"],
    "code": [1135, 1134, 1133, 1132],
}

tp = {
    "name": ["tp1", "tp2", "tp3", "tp4"],
    "code": [1000, 1001, 1002, 1003]
}

uw_val = "uw3"
tp_val = "tp4"

idx_uw=uw['name'].index(uw_val)
res_uw=uw['code'][idx_uw]
idx_tp=tp['name'].index(tp_val)
res_tp=tp['code'][idx_tp]
res=[str(res_uw),str(res_tp)]
print('-'.join(res))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM