Code: Alles auswählen
artikelneu = (
[r[i] for i in [0, 1, 4, 25]]
# ...
Code: Alles auswählen
artikelneu = (
[r[i] for i in [0, 1, 4, 25]]
# ...
Code: Alles auswählen
[r[i] for i in [0, 1, 4, 25]]
vs.
[r[0], r[1], r[4], r[25]]
Code: Alles auswählen
artikelneu = (
[r[i] for i in [0, 1, 4, 5, 25]]
for r in my_reader(infile)
if tuple(r[:2]) not in artikelvergleich
)
Nobuddy hat geschrieben:Zum Verständnis!Code: Alles auswählen
artikelneu = ( [r[i] for i in [0, 1, 4, 5, 25]] for r in my_reader(infile) if tuple(r[:2]) not in artikelvergleich )
Ist meine Annahme richtig, daß die Spaltendefinition von '[r for i in [0, 1, 4, 5, 25]]' in 'my_reader(infile)' übernommen wird?
vs.sma hat geschrieben:Code: Alles auswählen
[r[i] for i in [0, 1, 4, 25]] vs. [r[0], r[1], r[4], r[25]]
Code: Alles auswählen
from operator import itemgetter
items = itemgetter(0, 1, 4, 25)
...
items(r)
Code: Alles auswählen
items = itemgetter(0, 1, 4, 25)(r)
Wieso sollte das schneller sein? Wenn die Daten sehr groß sind, wird dein Stack sehr groß und irgendwann fliegst du in Python gegen das Rekursionslimit, also gerade für große Datenmengen ist Rekusion (in Python natürlich) nicht das Mittel der Wahl.AlphaX2 hat geschrieben:ohne alles genau gelesen zu haben eine spontane Idee. Wenn die Daten sehr, sehr groß sind, könnte man es doch womöglich beschleunigen, wenn man die zu bearbeitenden Listen aufteilt und mit Rekursion untersucht. :K