Having trouble finishing this program, not sure what my next steps shuold be

INSTRUCTIONS: define a LabeledPoint class that inherits from a Point class. First define an __init__ method that takes a x , y , and label and calls the parent constructor to initialize the x and y values in the current object. It also initializes the label in the current object. It should also have a __str__ method that returns the result of calling the parent’s __str__ method plus "label: " followed the the object’s label. For example, l1 = LabeledPoint(0, 5, "a") should return "x: 0, y: 5, label: a" from the __str__ method.

class Point: def __init__(self,label, initX, initY): self.label = label self.x = initX self.y = initY def __str__(self): return "x: " + str(self.x) + ", y: " + str(self.y) class LabeledPoint

It looks like you got most of the stuff already …

the class LabeledPoint will include a lot of the same stuff that’s in the Point class

you’re just missing inheritance:
class LabeledPoint(Point):

also,
the label stuff should probably be in the LabeledPoint class, not the Point class.

I also changed the order of the parameters: I put label last.
I used super().__init__ to take advantage of inheritance for the constructor.

class Point: def __init__(self, initX, initY): #self.label = label #removed self.x = initX self.y = initY def __str__(self): return "x: " + str(self.x) + ", y: " + str(self.y) def get_coordinates(self): return (self.x, self.y) class LabeledPoint(Point): def __init__(self, initX, initY, label): super().__init__(initX, initY) self.label = label # stuff below already taken care of by super().__init__ #self.x = initX #self.y = initY def __str__(self): return "x: " + str(self.x) + \ ", y: " + str(self.y) + \ ", label: " + str(self.label) P = Point(1, 2) print(P) Q = LabeledPoint(3, 4, 'Q') print(Q)