In this code, there's a Person
class that has an attribute name
, which gets set when constructing the object.
It should do:
greeting()
method is called, the greeting states the assigned name.class Person:
def __init__(self, name):
self.name = name
def greeting(self):
# Should return "hi, my name is " followed by the name of the Person.
return "hi, my name is {}".format(self.name)
# Create a new instance with a name of your choice
some_person = "xyz"
# Call the greeting method
print(some_person.greeting())
It returned the error:
AttributeError: 'str' object has no attribute 'greeting'
You're just setting the variable to a string, not a Person
class. This would make a Person
with a name of xyz
instead.
some_person = Person("xyz")