Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

التحقق من التوفر

جزء من قسم المنطق وتدفق التنفيذ في رحلة Python على Coddy. الدرس 70 من 78.

challenge icon

التحدي

سهل

أنشئ دالة باسم check_availability تأخذ وسيطًا واحدًا: item (سلسلة نصية). يجب أن تقوم الدالة بما يلي:

  1. التحقق مما إذا كان العنصر موجودًا في قاموس inventory.
    • إذا لم يكن موجودًا، قم بإرجاع "Item not found".
  2. إذا كان العنصر موجودًا، قم بإرجاع المخزون الحالي للعنصر.

أضف (استبدل) كتلة الكود التالية في أسفل الكود الخاص بك:

add_item("Apple", 0.5, 100)
add_item("Banana", 0.2, 50)
update_stock("Apple", -20)
update_stock("Banana", 30)
print(check_availability("Apple"))  # يجب أن تعيد 80
print(check_availability("Banana"))  # يجب أن تعيد 80
print(check_availability("Orange"))  # يجب أن تعيد "Item not found"

جرّب بنفسك

inventory = {}

def add_item(item, price, stock):
    if item in inventory:
        print(f"Error: Item '{item}' already exists.")
        return
    try:
        inventory[item] = {"price": float(price), "stock": int(stock)}
        print(f"Item '{item}' added successfully.")
    except ValueError:
        print("Error: Price and stock must be numeric.")

def update_stock(item, quantity):
    if item not in inventory:
        print(f"Error: Item '{item}' not found.")
        return
    try:
        new_stock = inventory[item]["stock"] + int(quantity)
        if new_stock < 0:
            print(f"Error: Insufficient stock for '{item}'.")
        else:
            inventory[item]["stock"] = new_stock
            print(f"Stock for '{item}' updated successfully.")
    except ValueError:
        print("Error: Quantity must be an integer.")


add_item("Apple", 0.5, 100)
add_item("Banana", 0.2, 50)
add_item("Apple", 0.6, 30)  # Should print an error
update_stock("Apple", -20)
update_stock("Banana", 30)
update_stock("Orange", 10)  # Should print an error
update_stock("Apple", -90)
print(inventory)  

جميع دروس المنطق وتدفق التنفيذ

تدرّب بنفسك: مترجم Python عبر الإنترنت