Inheritance
To initialize the parent class you should call super().__init__(enter params)
Override method can have different signature
class Parent:
def print_name(self):
print("from parent")
class Child(Parent):
def print_name(self, name: str):
print(f"child {name}")
Child().print_name() # error, you must pass nameStyling Classes
className ⇒ CamelCase module_name ⇒ lowercase + underscores
add docstring for module, classes and methods module ⇒ describing what classes on the module (top of the file) class ⇒ what is the class all about (after class defination) method ⇒ what the method expected to do (after method defination)
2 blank lines between classes within the module 1 blank line between methods within the class
standard library modules first then own module with 1 blank line separation