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

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

جزء من قسم Logic & Flow في رحلة 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)  

جميع دروس Logic & Flow