我想從鍵匹配另一個串列的字典中提取值
l_dict = {"oc1":"tar1", "oc2":"tar2", "oc3":"tar3", "oc4":"tar4","oc5":"tar5"}
l_list = ["oc3", "oc5"]
ld = set(l_dict)
ll = set(l_list)
for i in ld.intersection(ll):
print("Element " i " was found")
我得到:
Element oc3 was found.
Element oc5 was found.
我真的需要來自 dict 的帶有 tar 值的輸出,即:
tarfiles = ['tar3', 'tar5']
我怎么才能得到它?
uj5u.com熱心網友回復:
不列印,保存對應的值
tars = []
for i in ld.intersection(ll):
tars.append(l_dict[i])
請注意,來自的所有字串l_list都是l_dictjust do 的鍵
tars = [l_dict[key] for key in l_list]
uj5u.com熱心網友回復:
tarfiles = [l_dict[key] for key in l_list]
如果 l_list 中有不是 l_dict 鍵的專案,請使用:
tarfiles = [l_dict[key] for key in l_list if key in l_dict]
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/387054.html
