Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Python Object-Oriented Python Inheritance Super!

Keir Clyne
Keir Clyne
2,223 Points

Python Super OOP Challenge Task 2/3

So literally not sure where to go from here, everything I try doesn't seem to work and the "Bummer! Try again!" feedback isn't very helpful.

Any help would be appreciated!

Question: "Great! Now override the add_item method. Use super() in it to make sure the item still gets added to the list."

inventory.py
class Inventory:
    def __init__(self):
        self.slots = []

    def add_item(self, item):
        self.slots.append(item)

class SortedInventory(Inventory):
    def __init__(self,item,slots):
        super().add_item(self,item)
        self.slots.append(item)

2 Answers

Hi there, very close, however, you need to create the add_item method in the SortedInventory class so as to over_ride the Inventory add_item method.

class SortedInventory(Inventory:
    def add_item(self, item):
        super().add_item(item)

Hope that makes sense

Keir Clyne
Keir Clyne
2,223 Points

That worked! Thank you :)

Burhanettin Gokmen
Burhanettin Gokmen
4,384 Points

this worked but I did not understand anything! Can someone explain what we did?