Learn Special Methods by Building a Vector Space - Step 29

Tell us what’s happening:

Declare a variable args and assign it the value returned by joining the elements in arg_list with the string ‘, ‘.
def repr(self):
arg_list = [f’{key}={val}’ for key, val in vars(self).items()]
args=“,”.join(arg_list)

I may not understand the instructions but args=“,”.join(arg_list) is a join of the arglist and returns x=2,y=3

Your code so far


class R2Vector:
    def __init__(self, *, x, y):
        self.x = x
        self.y = y

    def norm(self):
        return sum(val**2 for val in vars(self).values())**0.5

    def __str__(self):
        return str(tuple(getattr(self, i) for i in vars(self)))

# User Editable Region

    def __repr__(self):
        arg_list = [f'{key}={val}' for key, val in vars(self).items()]
        args=",".join(arg_list)
        return args


# User Editable Region

class R3Vector(R2Vector):
    def __init__(self, *, x, y, z):
        super().__init__(x=x, y=y)
        self.z = z

v1 = R2Vector(x=2, y=3)
v2 = R3Vector(x=2, y=2, z=3)
print(f'v1* = {v1.__repr__()}')
print(f'v2 = {v2}')

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36

Challenge Information:

Learn Special Methods by Building a Vector Space - Step 29

sorry missing a space
correct answer - removed

It is great that you solved the challenge, but instead of posting your full working solution, it is best to stay focused on answering the original poster’s question(s) and help guide them with hints and suggestions to solve their own issues with the challenge.

We are trying to cut back on the number of spoiler solutions found on the forum and instead focus on helping other campers with their questions and definitely not posting full working solutions.

Verifica los espacios y no agregues codigo que no te solicitan, suerte.