Falls das mit dem `excludes` immer noch nicht klar geworden sein sollte: Ein Wert, der an einen Namen gebunden wurde, landet nicht plötzlich in einer Liste, sobald noch ein Wert an den selben Namen gebunden wird. Stattdessen wird der alte Wert des Namens durch den neuen Wert überschrieben, wodurch der alte Wert logischerweise nicht mehr über den Namen verfügbar ist. Das ist doch in Mathe oder selbst unter Windows nicht anders. Da wird auch eine vorhandene Datei bei Benutzung des gleichen Namens überschrieben. Niemand würde erwarten, dass der neue Datei-Inhalt einfach an den bereits vorhandenen Inhalt angehangen wird oder dass die beiden Datei-Inhalte automatisch in einem Zip-Archiv landen oder sowas. Wenn du jetzt also in irgendeiner Schleife immer wieder einen neuen Wert an `excludes` bindest, dann hält dieser Name am Ende natürlich nur den letzten Wert.
Die Lösung ist es also, etwas zu verwenden, das von vornherein dafür ausgelegt ist, als Container für mehrere Einträge zu dienen und sinnvollerweise mindestens die Möglichkeit zum Anhängen von Elementen bietet. Und *das* ist nun wirklich Grundlagenwissen, welches du in wirklich jedem Tutorial finden dürftest. Selbstverständlich muss das Anhängen dann in Bezug auf das Objekt und nicht in Bezug auf den Namen, an den das Objekt gebunden wurde, stattfinden. Folgendes wird also *nicht* zum von dir eventuell erwarteten Ergebnis führen:
Dies würde einfach nur den Zugriff auf die `Container()`-Klasse über den Namen `container` zunichte machen, weil der Wert des Namens mit `'spam'` überschrieben wurde.
//edit: "Container()"-Exemplar natürlich.