rewrite for achieving speedup
Steve Holden
steve at holdenweb.com
Tue Apr 17 11:17:37 EDT 2007
Johnny Blonde wrote:
> Hello Group!
>
> I really tried hard for two hours to rewrite the following expression
> (python 2.4):
> --------------------------
> teilnehmer = []
> for r in Reisen.select(AND(Reisen.q.RESVON <= datum, Reisen.q.RESBIS
>> = datum)):
> for g in r.BUCHUNGEN:
> for t in g.aktiveTeilnehmer:
> teilnehmer.append(t)
> --------------------------
>
> to something like
> --------------------------
> teilnehmer = [x for x in ........]
> --------------------------
>
> Reisen is a SQLObject class, Reisen.select(...), aktiveTeilnehmer and
> BUCHUNGEN all are of the type SelectResults.
>
> unfortunately i just can´t figure it out to make it work.
> i hope someone maybe can help me?
>
> I hope to gain performance by rewriting it...
>
> Thanks a lot for your help!
>
>>> lt = [[[1,2,3], [2,3,4]], [[3,4,5], [4,5,6]]]
>>> lf = [c for a in lt for b in a for c in b]
>>> lf
[1, 2, 3, 2, 3, 4, 3, 4, 5, 4, 5, 6]
>>>
Untested:
teilnehmer = [t for r in Reisen.select(AND(Reisen.q.RESVON <= datum,
reisen.q.RESBIS >= datum)) for g in r.BUCHUNGEN for t in g.aktiveTeilnehmer]
regards
Steve
--
Steve Holden +44 150 684 7255 +1 800 494 3119
Holden Web LLC/Ltd http://www.holdenweb.com
Skype: holdenweb http://del.icio.us/steve.holden
Recent Ramblings http://holdenweb.blogspot.com
More information about the Python-list
mailing list