Hi,
ich suche Arten wie man bennante Rekord-Datenstrukturen realisieren kann.
Ich meine eine Art ist ein Dictionary:
Z.B.: {plz:xxxxx , ort:yyyyy, strasse: zzzzz}
Sind einfach Tupel,
z.B.: (0,"Hallo",3)
oder auch Listen,
z.B:.: [1,"Hi",99]
auf namedtuple?
Ich wäre dankbar für eure Aufklärung.
Wege namedtuple zu realisieren
Hi,
auf der Seite war ich zuvor schon nur war das dict nicht dabei.
Das ist bei mir im Skript aber als Beispiel gegeben für ein namedtuple in Python.
Gibt es also die drei Varianten in Python:
namedtuple("Point", ["x", "y"], verbose=True)
Also ein Tupel mit einem einfachen String ("Point") oder eine Liste mit Strings als Inhalt (["x", "y"]), oder eine Wertzuweisung (verbose=True)?
Müssen es Strings oder Wahrheitswerte sein, oder dürfen es auch Integer oder floats sein?
Ist ein dict innerhalb der Tupels erlaubt?
Also dann so: namedtuple({plz:12345 , ort: hamburg}) ?
Danke schonmal für die Hilfe
auf der Seite war ich zuvor schon nur war das dict nicht dabei.
Das ist bei mir im Skript aber als Beispiel gegeben für ein namedtuple in Python.
Gibt es also die drei Varianten in Python:
namedtuple("Point", ["x", "y"], verbose=True)
Also ein Tupel mit einem einfachen String ("Point") oder eine Liste mit Strings als Inhalt (["x", "y"]), oder eine Wertzuweisung (verbose=True)?
Müssen es Strings oder Wahrheitswerte sein, oder dürfen es auch Integer oder floats sein?
Ist ein dict innerhalb der Tupels erlaubt?
Also dann so: namedtuple({plz:12345 , ort: hamburg}) ?
Danke schonmal für die Hilfe
@Bindl: »namedtuple« erzeugt einen Datentyp und nicht das Tuple selbst. Für Deinen Fall also
Code: Alles auswählen
Address = namedtuple("Address", "plz, ort, strasse")
my_home = Address(plz=20457, ort="Hamburg", strasse="Platz der Deutschen Einheit 1")
Hi,
das errinert mich schwer an Klassen und die Parameter mit der __init__ Funktion.
Was mich jetzt noch etwas verwirrt ist das unser Prof. von 3 unterschiedlichen Möglichkeiten spricht, wie man eine benannte Rekord-Datenstruktur in Python realisieren kann.
Als Beispiel in unserem Skript ist wie gesagt einfach ein Dictionary angebeben.
Was sind denn nun die 3 Möglichkeiten?
Das ist mir noch nicht so wirklich klar.
PS: Sorry für die vielen Nachfragen.
das errinert mich schwer an Klassen und die Parameter mit der __init__ Funktion.
Was mich jetzt noch etwas verwirrt ist das unser Prof. von 3 unterschiedlichen Möglichkeiten spricht, wie man eine benannte Rekord-Datenstruktur in Python realisieren kann.
Als Beispiel in unserem Skript ist wie gesagt einfach ein Dictionary angebeben.
Was sind denn nun die 3 Möglichkeiten?
Das ist mir noch nicht so wirklich klar.
PS: Sorry für die vielen Nachfragen.
@Bindl: Wörterbuch, `collections.namedtuple()`, und ``class`` würde ich mal vermuten. Letztendlich kann Dir das aber nur Dein Prof beantworten was er da gemeint hat.
Eine Frage noch, bzw. Korrektur.
Ist folgendes korrekt?
und
Ist folgendes korrekt?
Code: Alles auswählen
adresse = namedtuple(["xx","yy"])
Code: Alles auswählen
adresse = namedtuple({plz:12345,ort:Hamburg})
atrribut dicts, namedtuple und classWas sind denn nun die 3 Möglichkeiten?
Atrribut dicts musst du aber selber implementieren oder von hier importieren https://pypi.python.org/pypi/attrdict
Nein, beides nicht.Ist folgendes korrekt?
Warrum fragst du nicht deinen python interpreter ?
Vielen Dank für die Hilfe euch allen.Was sind denn nun die 3 Möglichkeiten?
atrribut dicts, namedtuple und class
Atrribut dicts musst du aber selber implementieren oder von hier importieren https://pypi.python.org/pypi/attrdict
Gute Frage. Habe gedacht, bevor ich blind herumprobiere frage ich die Experten.Warrum fragst du nicht deinen python interpreter ?
Wenn ich etwas mehr Ahnung von einem Teilgebiet habe probiere ich ganz gerne herum.
Hier war ich mir aber sehr unsicher wie das ganze geht.