Einträge 0,1,2,...,n in Liste [ ] schreiben

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.
Antworten
Arnold
User
Beiträge: 5
Registriert: Donnerstag 25. Oktober 2007, 13:31

Samstag 1. Dezember 2007, 18:41

Hallo,

ich habe eine kleine Frage zur Programmierung in Python, die hier sicher mit Leichtigkeit beantwortet werden kann:

Ich benötige für eine Eingabemaske einer Software einen Ausdruck mit nachfolgendem Format:

tags = {'ocean_west': [0,1,2,3,4,5]}

Die [0,1,2,3,4,5] möchte ich aber gerne geschrieben haben wie "von 0 bis 5", also etwa so: [0 bis 5], da ich hier bis zu tausend Werte eintragen muss, und ich diese nicht alle einzeln mit Komma getrennt in die Liste schreiben möchte.
Gibt es hierfür einen einfachen Audruck (für "von 0 bis 5", getrennt mit Kommas), wenn nein, wie kann ein solches Feld während der Laufzeit mit einer for-Schleife erzeugt werden?

Besten Dank im Voraus,
Arnold
Zap
User
Beiträge: 533
Registriert: Freitag 13. Oktober 2006, 10:56

Samstag 1. Dezember 2007, 18:53

Weiß nicht 100%ig ob ich deine Frage richtig verstehe, aber die Funktion range macht dir eine solche Sequenz fertig

Code: Alles auswählen

In [1]: tags = {'ocean_west': range(6) }

In [2]: tags
Out[2]: {'ocean_west': [0, 1, 2, 3, 4, 5]}
Arnold
User
Beiträge: 5
Registriert: Donnerstag 25. Oktober 2007, 13:31

Samstag 1. Dezember 2007, 19:07

Danke, der Eintrag in Zeile 2 funktioniert. Ist genau das, was ich benötige.
Sind die anderen beiden Einträge für eine Ausgabe, oder was ist das?
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Samstag 1. Dezember 2007, 22:27

Das ist die Ein- und Ausgabe des alternativen Python-"Interpreters" IPython (eigentlich ist es ein Wrapper um Python, der ein paar Features mehr hat als der normale Interpreter).
My god, it's full of CARs! | Leonidasvoice vs Modvoice
lunar

Samstag 1. Dezember 2007, 23:52

Ja, da kommen nur so ein paar unwichtige Dinge wie History und Completion dazu... total für die Katz', nur Weicheier nutzen das.
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Sonntag 2. Dezember 2007, 00:17

lunar hat geschrieben:Ja, da kommen nur so ein paar unwichtige Dinge wie History und Completion dazu... total für die Katz', nur Weicheier nutzen das.
Kann man aber auch durchaus mit dem normalen Interpreter haben, also so ist das nicht ;)

Inzwischen hat sogar mein netcat `readline`-Funktionalität nachgerüstet :)
My god, it's full of CARs! | Leonidasvoice vs Modvoice
lunar

Sonntag 2. Dezember 2007, 00:26

Leonidas hat geschrieben:
lunar hat geschrieben:Ja, da kommen nur so ein paar unwichtige Dinge wie History und Completion dazu... total für die Katz', nur Weicheier nutzen das.
Kann man aber auch durchaus mit dem normalen Interpreter haben, also so ist das nicht ;)
Echt? Wie denn?

Anyways, alles in allem ist ipython doch ein deutlicher Schritt nach vorne... ginge es nach mir, würde ipython schon längst mit Python kommen (evtl auch nur in einer abgespeckten Version, Schnittstellen für gnuplot brauche ich nicht)
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Sonntag 2. Dezember 2007, 01:07

lunar hat geschrieben:
Leonidas hat geschrieben:
lunar hat geschrieben:Ja, da kommen nur so ein paar unwichtige Dinge wie History und Completion dazu... total für die Katz', nur Weicheier nutzen das.
Kann man aber auch durchaus mit dem normalen Interpreter haben, also so ist das nicht ;)
Echt? Wie denn?
Mit rlcompleter. Warscheonlcih braucht es da ein wenig extra-Magie, aber möglich ist es schon.

Warum IPython nicht von Haus aus dabei ist liegt vermutlich daran, dass `readline` unter Windows nur mit `ctypes` lief, was damals (TM) nicht in der Stdlib war. Ist nun besser, aber wenn man IPython mitliefern will, dann holt man sich doch einen ziemlich großen Haufen Code mit rein - auch wenn man IPython in etwas reduzierter Form reinnimmt.

Naja, also ich hatte nie ein Problem IPython nachzuinstallieren, bei den meisten Distributionen gibt es sowieso schon ein entsprechendes Paket.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

Montag 3. Dezember 2007, 12:26

Fuer Tab-Vervollstaendigung:

Code: Alles auswählen

try:
    import readline
except ImportError:
    print "Module readline not available."
else:
    import rlcompleter
    readline.parse_and_bind("tab: complete")
ins Homeverzeichnis legen und $PYTHONSTARTUP drauf zeigen lassen -- voila!

History duerfte auch nicht viel schwieriger sein...
Offizielles Python-Tutorial (Deutsche Version)

Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
Mad-Marty
User
Beiträge: 317
Registriert: Mittwoch 18. Januar 2006, 19:46

Montag 3. Dezember 2007, 16:35

Rebecca hat geschrieben:Fuer Tab-Vervollstaendigung:

Code: Alles auswählen

try:
    import readline
except ImportError:
    print "Module readline not available."
else:
    import rlcompleter
    readline.parse_and_bind("tab: complete")
ins Homeverzeichnis legen und $PYTHONSTARTUP drauf zeigen lassen -- voila!

History duerfte auch nicht viel schwieriger sein...
oder gleich ne richtige IDE wie wing IDE ;)
afaik hat auch IDLE history. Pythonwin hat auch beides.
Antworten