Salut, avec les classes habituelles on peut par exemple brider à 5 le nombre d' instances d’une classe comme ceci:
MAX_COUNT = 5 # pour l'exemple
class X:
counter = 0 # variable de classe
def __new__(cls):
if X.counter < MAX_COUNT:
X.counter += 1
return super().__new__(cls)
else:
raise RuntimeError('maximum instances exceded')
Comment fait on pour obtenir le self.id (ordre chronologique d' instanciation donc il faudrait l’index d’une liste des instances) et brider le nombre maximum d' instances lorsqu’il s’ agit d’une dataclasse ?
+0
-0