0% found this document useful (0 votes)
8 views2 pages

class InventoryItem

Uploaded by

Houssam Alrifaii
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views2 pages

class InventoryItem

Uploaded by

Houssam Alrifaii
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2

class InventoryItem:

def __init__(self, name, quantity, price):


self.name = name
self.quantity = quantity
self.price = price

def __str__(self):
return f"{self.name}: {self.quantity} units, ${self.price:.2f} each"

def total_value(self):
return self.quantity * self.price

class Inventory:
def __init__(self):
self.items = {}

def add_item(self, name, quantity, price):


if name in self.items:
self.items[name].quantity += quantity
print(f"Updated {name}: New quantity is {self.items[name].quantity}")
else:
self.items[name] = InventoryItem(name, quantity, price)
print(f"Added new item: {name}")

def remove_item(self, name, quantity):


if name in self.items:
if self.items[name].quantity >= quantity:
self.items[name].quantity -= quantity
print(f"Removed {quantity} of {name}. New quantity is
{self.items[name].quantity}.")
if self.items[name].quantity == 0:
del self.items[name]
print(f"{name} removed from inventory.")
else:
print(f"Not enough {name} in inventory. Available:
{self.items[name].quantity}.")
else:
print(f"{name} not found in inventory.")

def total_inventory_value(self):
total_value = sum(item.total_value() for item in self.items.values())
print(f"Total inventory value: ${total_value:.2f}")
return total_value

def display_inventory(self):
if not self.items:
print("Inventory is empty.")
else:
print("Current Inventory:")
for item in self.items.values():
print(item)

# Example usage
if __name__ == "__main__":
inventory = Inventory()

inventory.add_item("Widget", 10, 2.50)


inventory.add_item("Gadget", 5, 15.00)
inventory.display_inventory()

inventory.remove_item("Widget", 3)
inventory.total_inventory_value()

inventory.remove_item("Gadget", 5)
inventory.display_inventory()

You might also like