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 Instant Objects Your first method

Samantha Shaffer
Samantha Shaffer
1,710 Points

I'm trying to call an attribute in a method as part of a string, but am getting a NameError. Help!

I think this code challenge wants me to return an attribute in a method, but for some reason I can't figure it out. Is it possible to do that?

first_class.py
class Student:
    name = "Sam"
    def praise(self):
        return("You're doing a great job, {}".format(name))

1 Answer

diogorferreira
diogorferreira
19,363 Points

You just need to use self.name instead of just name to reference the instance's name

class Student:
    name = "Sam"
    def praise(self):
        return("You're doing a great job, {}".format(self.name))
pet
pet
10,908 Points

Your not supposed to just put in all of your code diogorferreira. Still good job on your answer. :)