簡體   English   中英

如何將列表中的值引用到字典鍵值?

[英]How can I reference a value from a list to the dictionary key value?

所以我對這段代碼有兩個論據:一個是一本充滿附有價格的雜貨的字典,一個是商品本身。 我的目標是添加我放入購物車的每件商品的價格。

例如,如果列表 shopping_list 被定義為["shampoo", "brush", "shampoo", "soap", "soap", "dog food", "soap"] ,那么我會將這些相應的值加在一起。價格已經在我的論點中定義了。 但是,我非常堅持這一點。 這是我到目前為止:

def shopping(products, shopping_list):
    total = 0
    for n in shopping_list:
        if n in products.keys():
            total += sum(products.values())
    return total

我返回的數字太高了。

這從與列表中的項目對應的字典中取出值並取總和:

lst = ["shampoo", "brush", "shampoo", "soap", "soap", "dog food", "soap"]

d = {'shampoo': 2, 'brush': 1, 'soap': 3, 'dog food': 5}

print(sum(d[x] for x in lst))
# 19

對於產品中不存在案例項目 => 我將其設置為 0。

shopping_list = ["shampoo", "brush", "shampoo", "soap", "soap", "dog food", "soap"] products = {'shampoo': 2, 'brush': 1, 'soap': 3, 'dog food': 5} final_result = {} for item in shopping_list: if item in final_result: final_result[item] += products.get(item,0) else: final_result[item] = products.get(item,0) return final_result

暫無
暫無

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

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