Daten-Struktur selbst definieren und Verschachteln
Verfasst: Freitag 9. August 2019, 15:36
Hallo liebe Python-Gemeinde,
ich verwende sehr gerne solche Strukturen um Signale zu bündeln zB
danach kann man recht übersichtlich mit solchen Signalen arbeiten. Nun stellt sich mir die Frage ob ich da recht großen Unsinn tue und wie ich das erweitern kann.
Wie kann ich eines der Felder zB "gain" noch aufteilen in weitere drei Felder zB gain.a gain.b und gain.c ?
Muss ich da wirklich drei separate Felder in der Klasse Signal() anlegen (also statt gain eben gainA, gainB und gainC anlegen) oder kann ich das auch irgendwie besser anstellen?
Ich würde mir denken, dass ich diese Konstruktion irgendwie verschachteln können muss oder?
Kann ich ("gain", float) vielleicht irgendwie so definieren (gain = ClassGain()) und in ClassGain werden dann die Felder für a, b und c definiert?
Grüße!
ich verwende sehr gerne solche Strukturen um Signale zu bündeln zB
Code: Alles auswählen
# - - -
class Signal():
_fields_ = [("name", str),
("value", float),
("gain", float),
("offset", float),
("time", float)]
# - - -
signal1 = Signal()
signal1.name = "channel1"
signal1.value = [2.5, 2.3, 2.4]
signal1.gain = 1.8
signal1.offset = 0.2
signal1.time = [0, 1, 2]
print(signal1.name, signal1.value, signal1.gain, signal1.offset, signal1.time)
Wie kann ich eines der Felder zB "gain" noch aufteilen in weitere drei Felder zB gain.a gain.b und gain.c ?
Muss ich da wirklich drei separate Felder in der Klasse Signal() anlegen (also statt gain eben gainA, gainB und gainC anlegen) oder kann ich das auch irgendwie besser anstellen?
Ich würde mir denken, dass ich diese Konstruktion irgendwie verschachteln können muss oder?
Kann ich ("gain", float) vielleicht irgendwie so definieren (gain = ClassGain()) und in ClassGain werden dann die Felder für a, b und c definiert?
Grüße!