تيكبامين

الاستخدام العملي للقواميس

لنستخدم القواميس في مشكلة واقعية. تخيل أنك تبني متجرًا إلكترونيًا، وتحفظ أسعار المنتجات في قاموس:

prices = {'apple': 2, 'box': 5, 'cat': 100, 'dog': 100} هذا يوضح سبب كون البحث في القاموس قائمًا على المفاتيح لا القيم. ماذا يمكن أن تعني prices[100]؟ هل النتيجة 'dog' أم 'cat' أم الاثنتان؟ يمكن أن تتكرر القيمة في القاموس مرات كثيرة.

أما المفاتيح فيجب أن تكون فريدة. تخيل مثلًا:

prices = {'apple': 2, 'apple': 3} كم سعر التفاحة؟ نعرف أننا سنكتب prices['apple']، لكن هل القيمة 2 أم 3؟ منطقيًا يجب أن يكون هناك سعر واحد تحت المفتاح نفسه، ولذلك لا يمكن الاعتماد على مفاتيح مكررة لتمثيل قيمتين مختلفتين.

لدينا الآن متجر عادي، وعملاء لديهم قوائم مشتريات مثل ['apple', 'box', 'cat']. نريد حساب السعر الإجمالي بأنفسنا.

أكمل الدالة التالية، وخصوصًا السطر price = ...:

def total_cost(cart, prices):
    result = 0
    for item in cart:
        price = ...
        result += price
    return result

check_result(
    total_cost(
        ['apple', 'box', 'cat'],
        {'apple': 2, 'box': 5, 'cat': 100, 'dog': 100},
    ),
    107,
)

تذكّر أن prices قاموس، وأن العناصر الموجودة في cart هي المفاتيح التي تحتاجها للحصول على الأسعار.