Mit Slots kann man die Erzeugung von dynamischen Attributen verhindern, d.h. die Erzeugung des Arrays „__dict__“.
Um Slots zu generieren, muss man eine Liste mit dem Namen __slots__ definieren.
Diese Liste enthält die Namen aller Attribute, die wir in der Klasse nutzen können. Nachträglich können wir keine weiteren mehr erzeugen.
class S(object):
__slots__ = ['val']
def __init__(self, v):
self.val = v
x = S(42)
print(x.val)
x.new = "not possible"
Ausgabe