Hello I have a module that is installed in site-packages folder. The module contains a class that mostly consists of class variables and static methods (there are no instance methods), something of the form
class C1:
name = 'C1'
todos = []
tasks = {}
@classmethod
def f1(cls) -> None:
pass
@staticmethod
def f2(cls) -> None:
pass
etc. The class variables as well as the lists and dicts are manipulated in the methods. Now I see another class (lets say C2) (also in site-pacakges) that uses this class C1. Now C2 is used as a base class for other classes. My question is: Will these class variables in C1 shared by all those class instances?
I an unable to understand the scoping. Can somebody please guide me to a good example.