Automatisch erstellte Objektbezeichnungen

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.
bogiflip
User
Beiträge: 2
Registriert: Mittwoch 10. November 2004, 10:15

Automatisch erstellte Objektbezeichnungen

Beitragvon bogiflip » Mittwoch 10. November 2004, 10:21

Hi. Ich bin recht neu in Python und stehe jetzt vor diesem Problem:

Ich benötige automatisch generierte Objektnamen beim erstellen eines Objekts. Ich möchte das dies in einer Methode/Schleife automatisch passiert und ich die Objekte nicht "manuell" deklarieren muss.
Als Beispiel:

Ich habe eine Class Node

Das erste erzeugte Objekt soll N1, das zweite N2 ... benannt werden.
Also benötige ich etwas wie:
Nx = Node()
x = x+1

Wie kann ich dies in Python realisieren?
Vielen Dank für jede Hilfe
bogiflip
Benutzeravatar
murphy
User
Beiträge: 60
Registriert: Samstag 30. Oktober 2004, 01:34
Wohnort: Berlin
Kontaktdaten:

Beitragvon murphy » Mittwoch 10. November 2004, 10:24

mit einem array vielleicht?
kenne leider die syntax für "anhängen" nicht...aber das ist auf jeden fall die lösung für dein problem.
dynamische bezeichner brauchst du nicht.
bogiflip
User
Beiträge: 2
Registriert: Mittwoch 10. November 2004, 10:15

Beitragvon bogiflip » Mittwoch 10. November 2004, 10:56

Die Syntax für anhägnen ist nameOfList.append(object)

Ist aber leider nicht das was ich suche, da ich gerade auf Lists/Arrays verzichten möchte. Ich muss die Objekte nämlich über ihren Namen aufrufen können und nicht über ihre Position in der Liste.

Weitere Ideen? Das muss doch möglich sein...
Benutzeravatar
Michael Euteneuer
User
Beiträge: 9
Registriert: Mittwoch 7. Januar 2004, 16:36

Beitragvon Michael Euteneuer » Mittwoch 10. November 2004, 11:33

Hi!
Warum ist es denn wichtig, dass Du die Objekte über Namen ansprichst? Ich sehe keinen Unterschied, ob Du das Element Nx als Objekt Nx oder als Objekt ListofNodes[x] ansprichst... Deswegen würde ich auch für eine Liste (oder ein dictionary) plädieren.

Gruß,
Michael
Benutzeravatar
murphy
User
Beiträge: 60
Registriert: Samstag 30. Oktober 2004, 01:34
Wohnort: Berlin
Kontaktdaten:

Beitragvon murphy » Mittwoch 10. November 2004, 11:40

wohl nur über eval() oder ähnliches. wer sollte sowas brauchen?
Gast

Beitragvon Gast » Mittwoch 10. November 2004, 11:50

Vielen Dank schon jetzt!

Die Sache ist, dass ich versuche einen Suffixbaum zu konstruieren, der auf einer eigenen Liste basiert. Wenn die Elemente dieser konstruierten Liste wiederum in einer anderen Liste stecken finde ich das etwas "unglücklich", da es in dem theoretischen Modell auch nicht so vorgesehen ist.
Daher mein Gedanke keine (Python-)Listen zu verwenden.
Im Notfall werde ich es aber wohl so machen müssen.

Könnte mir das Argument "yield" irgendwie helfen?
Benutzeravatar
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Beitragvon Dookie » Mittwoch 10. November 2004, 13:37

Hi,

du könntest auch ein Dictionary verwenden und ja yield könnte dir helfen:
http://python.sandtner.org/viewtopic.php?t=1297


Gruß

Dookie

Code: Alles auswählen

#!/usr/bin/env python
import this

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot]