Seite 1 von 2
Re: Liste aus einer Liste erzeugen
Verfasst: Mittwoch 24. November 2010, 21:44
von numerix
EyDu hat geschrieben:Wenn du das durch eine Funktion ersetzt, dann bist du das Problem los.
Das bezweifle ich. Es ist nicht nur der bedingte Ausdruck, sondern auch die LC - die gibt es erst ab Python 2.5.
Aber wer mit der Begründung bei Python 2.4 bleibt, er habe ein Projekt damit angefangen, der hat es auch nicht besser verdient.

Re: Liste aus einer Liste erzeugen
Verfasst: Mittwoch 24. November 2010, 23:13
von api
@EyDu, numerix: Das ist das, was ich ja meine - meine Version 2.4 gibt nunmal ein "itertools.product" nicht her...
Aber klar, es krampfhaft mit 2.4 fertigstellen zu wollen, ist natürlich nicht gerade verständlich. Ich werde es wohl auch nach 3.1 umstellen - wäre aber mein erstes Prg in 3.1 (irgendwann muss man ja mal anfangen!)
Andererseits hätte es mich schon interessiert, ob man das unter 2.4 ähnlich elegant hinbekommen hätte
Aber ich danke euch für die Hilfe.

Re: Liste aus einer Liste erzeugen
Verfasst: Mittwoch 24. November 2010, 23:22
von numerix
Warum muss es denn unbedingt "3.1" sein? Nimm doch z.B. Python 2.6 und dein "2.4"-Code wird aller Wahrscheinlichkeit nach unverändert laufen und das Snippet von EyDu kannst du dann auch einsetzen.
Re: Liste aus einer Liste erzeugen
Verfasst: Mittwoch 24. November 2010, 23:38
von EyDu
Dann werfe ich der jetzt einfach mal vor, dass du nicht einmal einen Blick in die Dokumentation geworfen hast. Dort steht sogar der Code der Implementierung

. Außerdem sollte man die product-Funktion auch ohne groß nachzudenken selber schreiben können.
Die beste Lösung ist aber sicher auf eine aktuelle Version zu wechseln. Mit 2.4 wirst du früher oder später untergehen.
Re: Liste aus einer Liste erzeugen
Verfasst: Donnerstag 25. November 2010, 00:24
von BlackJack
Wobei ich sicherheitshalber noch einmal betonen möchte, das aktuell auch eine 2.7 ist und nicht nur eine 3.1. Es gibt momentan zwei aktuelle Entwicklungszweige. Auch wenn die 2er auslaufen wird, denke ich die wird noch eine ganze Weile aktuell zur Verfügung stehen.
Von einer 2.7 ist dann auch der Sprung zu einer 3er sicher einfacher zu machen, weil man den Quelltext auf der 2.7er laufend schon darauf vorbereiten kann und so einen fliessenderen Übergang hin bekommt.
Meine Linux-Distribution hat 2.6 als Standardpython installiert. Das wird bei mir wohl die nächsten 5 Jahre die Basis sein. Von den Quelltexten abgesehen, die wegen Jython noch auf 2.5 laufen müssen. Oder vielleicht demnächst PyPy -- das ist ja auch nicht uninteressant.
Re: Liste aus einer Liste erzeugen
Verfasst: Donnerstag 25. November 2010, 09:21
von api
Hallo zusammen,
leider habe ich keinen Einfluss auf die Version - ausser, dass ich zwischen 2.4 & 3.1 wählen kann. Wenn ich 2.6 oder 2.7 benutzen könnte, würde ich auf jeden Fall den Weg nehmen.
Natürlich kann man dieses Problem auch mit diversen for-Schleifen oder ähnlichem lösen, aber mich interessiert halt, wie man das mit gegebenen Mitteln, die Python einem zur Verfügung stellt & die ich evtl. noch nicht kenne, hinbekommen könnte.
@EyDu: In die Doku zu schauen, ist immer nen guter Weg - ja klar. Aber dazu muss man doch erstmal wissen, wo man schauen soll. Wenn man mit "itertools.product" vorher nichts gemacht hat, kommt man da auch nicht unbedingt sofort drauf.