Object Attribute übernehmen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Werterder1
User
Beiträge: 2
Registriert: Freitag 18. März 2022, 17:25

Hallo,
in meinem code erzeuge ich an verschiedenen stellen aus einer class ein Objekt.
Ich für da immer eine Methode aus die werte in einer List ändert.

das Problem ist das jedes Objekt das nur für sich macht und die werte nicht übernommen werden.
also dass die Änderung auch die anderen Objekte haben
Object1 list( 0,0,0,1) Object2 list (0,0,1,0)
es soll aber
class1 list(0,0,1,1) sein.

ich glaub das liegt an public und private
Benutzeravatar
sparrow
User
Beiträge: 4540
Registriert: Freitag 17. April 2009, 10:28

Ich glaube, du verwechselst da einige Dinge, denn "public" und "private" gibt es in Python nicht. Und auch in anderen Sprachen hätte das nichts mit deinem Problem zu tun.
Man wird nur mäßig schlau aus deiner Erklärung, ohne Code zu sehen. Die Lösung erscheint aber recht einfach: Wenn du das selbe Objekt an verschiedenen Stellen manipulieren möchtest, dann brauchst du dort auch überall das selbe Objekt - und nicht verschiedene Instanzen einer Klasse.
Strukturier also dein Programm richtig, so dass entsprechend eine Instanz der Klasse herumgereicht wird, statt (und das vermute ich) du Klassenattribute dafür missbrauchen möchtest, weil dein Code kaputt ist.
Zuletzt geändert von sparrow am Freitag 18. März 2022, 19:17, insgesamt 1-mal geändert.
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Public und private gibt es in Python so nicht. Aus deiner Beschreibung wird das Problem nicht wirklich ersichtlich. Bitte den relevanten Code zeigen, dabei die Code Tags nicht vergessen.
Werterder1
User
Beiträge: 2
Registriert: Freitag 18. März 2022, 17:25

Hat sich erledigt nach dem ich seit ein paar tagen dran bin und mich entschieden habe zu fragen.
Habe ich durch rumprobieren die Lösung gefunden. Die liste war in __init__. nach dem ich sie da rausgeholt habe hat es funktioniert.

Trotzdem danke.
Benutzeravatar
sparrow
User
Beiträge: 4540
Registriert: Freitag 17. April 2009, 10:28

Ja, klingt genau so falsch, wie ich vermutet habe.
Antworten