Seite 1 von 1

Ausgabe von gespeicherten Variablen

Verfasst: Mittwoch 10. August 2011, 18:24
von paracide
Guten Abend zusammen,

mit folgendem Code erzeuge ich mir eine Anzahl von Punkten:

Code: Alles auswählen

        for a in range(1,x):
            for i in range(1,x):
                index = i + y*(a-1)
                s = "Pkt" + str(index) + " = (" + str(a) + "," + str(i) + ")"
                exec(s)
        Punkt_einlesen = input("Welcher Punkt soll angezeigt werden?")
        Punktx = "Pkt" + str(Punkt_einlesen)
        print (Punktx)
        print (Pkt5)
Das Problem das sich mir nun stellt ist folgendes:
1.
Nachdem ich alle Punkte erstellt habe möchte ich nun abfragen welcher Punkt ausgegeben werden soll, das versuche ich mit die Variable "Punktx"...
Geht leider nicht...
Gebe ich jedoch im Code die Variable ein, so gibt er sie mir richtig aus (Pkt5)
Was mache ich falsch???

Re: Ausgabe von gespeicherten Variablen

Verfasst: Mittwoch 10. August 2011, 18:36
von /me
paracide hat geschrieben:Was mache ich falsch???
Wenn du versuchst Variablen durchzunummerieren machst du definitiv etwas falsch. Dafür gibt es geeignetere Datentypen wie Listen oder Dictionaries.

So wie der Code aussieht solltest du dir dringend einmal das Python-Tutorial anschauen.

Re: Ausgabe von gespeicherten Variablen

Verfasst: Mittwoch 10. August 2011, 21:49
von paracide
Danke für den Link,

das Tutorial kannte ich überhaupt nicht.
Hat mir super geholfen.
Funktioniert jetzt genau wie ich es möchte...

Code: Alles auswählen

        Punktx = input("Welcher Punkt soll angezeigt werden?")
        list = [[b, c] for b in range(1,x) for c in range(1,x)]
        Punkt_ausgabe = Punktx - 1
        print
        print "Die Koordinaten des Punktes",Punktx ,"lauten:"
        print list.pop(Punkt_ausgabe)

Re: Ausgabe von gespeicherten Variablen

Verfasst: Donnerstag 11. August 2011, 02:02
von EyDu
Hallo.

Dann solltest dur dir als nächstes noch PEP 8 durchlesen, das kennst du wahrscheinlich auch noch nicht ;-)

Viel wichtiger ist jedoch, dass du das `input` entfernst, da dieses beliebigen Code ausführt. Benutze besser `raw_input` und wandle das ergebnis explizit mit `int` in einen Integer um. Dann bekommst du auch an der richtigen Stelle eine Fehlermeldung, falls der Benutzer eine ungültige Eingabe macht, welche jedoch Python-Code entspricht. Wie zum Beispiel `4.2`.

Sebastian

Re: Ausgabe von gespeicherten Variablen

Verfasst: Donnerstag 11. August 2011, 11:14
von /me
paracide hat geschrieben:

Code: Alles auswählen

        list = [[b, c] for b in range(1,x) for c in range(1,x)]
Eine Anmerkung dazu: Es ist ungünstig einen Bezeichner list zu nennen, weil du damit das eingebaute list überschreibst.