Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

Python Object-Oriented Python Instant Objects Master Class

'Can't find RaceCar' - but it's right there!

In this challenge, we're asked to make a simple class, here is what the challenge info says: "OK, let's combine everything we've done so far into one challenge! First, create a class named RaceCar. In the init for the class, take arguments for color and fuel_remaining. Be sure to set these as attributes on the instance. Also, use setattr to take any other keyword arguments that come in."

It gives me an error saying it can't find RaceCar even though it's right there in the code. I'm pretty sure I've done what it wants me to do, what am I doing wrong?

racecar.py
class RaceCar:

    color
    fuel_remaining

    def __init__(self, color, fuel_remaining, **kwargs):
        self.color = color
        self.fuel_remaining = fuel_remaining
        for key, value in kwargs.items:
            setattr(self, key, value)

1 Answer

Chris Evergreen
Chris Evergreen
2,857 Points

A Couple Things:

1: You left color and fuel_remaining hanging without giving it a default string (for color) or integer (for fuel). Fix that bit first. It's what's causing RaceCar to "not be found." For example:

color = "your_color"
remaining_fuel = 100

2: This error's a little harder to spot. In your line:

for key, value in kwargs.items:

The method .items is written incorrectly. It should be .items() instead. So, that line should read as:

for key, value in kwargs.items():

After that, you should be good to go. Best of luck!

Works like a charm, thanks Chrisee!