Klasseninstanzen über Schleife erzeugen

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.
Sirius3
User
Beiträge: 17741
Registriert: Sonntag 21. Oktober 2012, 17:20

@Tinker232: da wir nicht wissen, was Du denn mit den Sensor-Werten machen willst, kann man auch schlecht Tipps geben. So wie Du es jetzt schreibst, schein ein Wörterbuch eine mögliche Lösung sin.


@__deets__: in anderen Fragen scheint Tinker232 Qt zu benutzen. Wie kommst Du jetzt auf Fragmente die wie Tkinter aussehen? Ich bin verwirrt.
Benutzeravatar
sls
User
Beiträge: 480
Registriert: Mittwoch 13. Mai 2015, 23:52
Wohnort: Country country = new Zealand();

__deets__ hat geschrieben: Montag 1. Oktober 2018, 16:46 self._sensor_displays = [SensorDisplay(sensor, root) for sensor in sensors]
Hätte hier statt der List-Comprehension ein list(map(SensorDisplay, sensors)) irgendwelche Vorteile ?

Was ich mich noch Frage: wer verwendet heutzutage noch XML?
When we say computer, we mean the electronic computer.
Sirius3
User
Beiträge: 17741
Registriert: Sonntag 21. Oktober 2012, 17:20

Ob man map oder LC benutzt, ist reine Geschmacksache (Wer verwendet heutzutage noch map?).

XML ist portabel und gut lesbar, vor allem bei komplexeren Strukturen. Jede Alternative hat zudem andere Vor- und Nachteile.
Benutzeravatar
__blackjack__
User
Beiträge: 13077
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Sirius3: Wobei „gut lesbar“ davon abhängt ob man es so gestaltet oder nicht. Es gibt auch einen ganzen Haufen XML-Anwendungen die nicht für Menschen alles mögliche, aber nicht gut lesbar sind. :-)

Ich verwende heutzutage noch `map()`. Allerdings eher nicht wenn ich eine Liste brauche, also wenn der nächstes Schritt dann wie hier der `list()`-Aufruf wäre.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Benutzeravatar
sls
User
Beiträge: 480
Registriert: Mittwoch 13. Mai 2015, 23:52
Wohnort: Country country = new Zealand();

Ich war nur etwas verwundert denn jede XML-Konfiguration die ich bisher sah war strukturell der reinste Horror und im Zusammenhang mit Sicherheitslücken von Webservern fiel dabei immer wieder XML. Aber gut, dann ist auch das alles eine Frage von "wie man es verwendet".

Mit higher order functions wie map, filter, reduce, hatte ich bis dato noch nicht so intensiv gearbeitet, daher fragte ich mich ob da ein grundlegener Vor- oder Nachteil bestünde. Danke für die Aufklärung.
When we say computer, we mean the electronic computer.
Sirius3
User
Beiträge: 17741
Registriert: Sonntag 21. Oktober 2012, 17:20

XML ist ein ziemlich einfaches Dateiformat. Sicherheitslücken gibt es da nicht. Einzig in ML-Transformationen könnte es Probleme geben.
__deets__
User
Beiträge: 14528
Registriert: Mittwoch 14. Oktober 2015, 14:29

@Sirius3: völlig vergessen, weil 99% tkinter sind. Aber klar, muss natürlich setText sein. Oder so.
Benutzeravatar
kbr
User
Beiträge: 1487
Registriert: Mittwoch 15. Oktober 2008, 09:27

__deets__ hat geschrieben: Montag 1. Oktober 2018, 16:46 Wobei das ja das Problem auch nicht loest. Denn die Namen muessen ja auch irgendwo herkommen. Ob du nun "self.sensoren['schwingstangentemperatur']" oder self.sensor_schwingstangentemperatur schreibst ist prinzipiell egal - beides ist Code, der eine konkrete Annahme ueber einen Namen trifft.
Die Namen kommen aus XML-Daten, jedenfalls soweit ich das hier mitbekommen habe. Wenn das Programm diese Namen zuvor nicht weiß, so ist es mit einem Dictionary leicht, diese anzulegen und auch später abzufragen. Mit dynamisch generierten Attributen geht dies zwar auch – dies wäre aber kein Weg, den ich ohne Not würde beschreiten wollen.
__deets__
User
Beiträge: 14528
Registriert: Mittwoch 14. Oktober 2015, 14:29

@kbr: dich habe ich schon verstanden ;) Wenn es dem Problem dienlich ist, kann man natürlich auch ein Wörterbuch benutzen. Nur muss der Zugriff darauf ja trotzdem irgendwie den Schlüssel seinerseits irgendwo her bekommen. Aus einer expliziten oder impliziten Datenstruktur wie zb einer Widget Hierarchie.
Antworten