@Neo_Junior: Verstehst Du warum der Fehler hier kommt?
Code: Alles auswählen
In [183]: a + b = c + d
------------------------------------------------------------
File "<ipython console>", line 1
SyntaxError: can't assign to operator (<ipython console>, line 1)
Wenn Du das verstehst, dann müsstest Du auch verstehen warum Du ihn bekommst wenn Du das mit dem ``%``-Operator versuchst. Auf der linken Seite der Zuweisung muss halt auch etwas stehen dem man etwas zuweisen kann.
Bei Dir steht da ``self.components.Bild % s.file``. Selbst das, ohne die Zuweisung, könnte nur funktionieren wenn 1. `self.components.Bild` existiert, das Objekt 2. den ``%``-Operator überlädt, 3. `s` existiert, und 4. ein `file`-Attribut hat, und 5. dieses dann noch als anderes Argument vom ersten Objekt für die ``%``-Operation akzeptiert wird.
Auf der rechten Seite der Zuweisung fehlt dann ganz offensichtlich in der Zeichenkette 'Foto.jpg' ein Platzhalter um `foto` dort hinein zu formatieren.
Du suchst die `setattr()`-Funktion.