This is my first post here and I'm new to python and excited to learn. I hope my post here is clear enough for everyone.

Is there anyone that knows if it's possible to reduce the arguments needed for a child class from its parents' inheritance?

Here's the example:

```
# this is a code to estimate any polygon's perimeter (parent)
# the second one is code to estimate a square's area (child)

    class RegularPolygon:
    `def __init__(self, 
                 no_of_sides=0, 
                 side_length=0):`
        `self.no_of_sides = no_of_sides`
        `self.side_length = side_length`

    `def perimeter(self):`
        `perimeter =  self.no_of_sides * self.side_length`
        `return perimeter`

    `class Square(RegularPolygon):`
        `def __init__(self, 
                 no_of_sides=4, 
                 side_length=0):`
            `super().__init__(no_of_sides, side_length)`   

        `def area(self):`
            `area = self.side_length ** 2`
            `return area`

```

I'm trying call child class and to estimate square. Because it's a square it always has 4 sides, so `no_of_sides` = will always 4. I'm thinking of making it automatic hence I can call class Square with just one arguments.

Here's what i expect from them:

```
    `item = Square(5)`
    `item.area()`
>>> 20
    `item.perimeter()`
>>>20

```

I tried giving basic value to their arguments (parent, child, parent&child) but still always got wrong result.
Is there anyway?