Dict Comprehension ?
Given 2 Number-Lists say l0 and l1, count the various positiv differences between the 2 lists the following part works: dif=[abs(x-y) for x in l0 for y in l1] da={} for d in dif: da[d]=da.get(d,0)+1 i wonder, if there is a way, to avoid the list dif Ernst-Ludwig Brust -- http://mail.python.org/mailman/listinfo/python-list
Re: Dict Comprehension ?
<[EMAIL PROTECTED]> schrieb im Newsbeitrag news:[EMAIL PROTECTED] > > Instead of creating the list (array) dif, you can create a lazy > iterator. Then you can fed it to a set. Thangs, this idea is not only less storage-consuming but even faster than the "List-Version". But, i used the idea of pruebauno, as this is faster. Ernst-Ludwig Brust -- http://mail.python.org/mailman/listinfo/python-list
Re: Dict Comprehension ?
"Ben Finney" <[EMAIL PROTECTED]> schrieb im Newsbeitrag news:[EMAIL PROTECTED] > "Ernst-Ludwig Brust" <[EMAIL PROTECTED]> writes: > > So, generator expressions can be a powerful way to clarify the purpose > of a section of code. They can be over-used, though: don't use them > unless they actually *do* clarify the code; sometimes an explicit > looping construct is clearer. Thangs, my opinion was, that "one-statement-constructions" are much faster then f.e. explicit loops. But, now i know, with Python, this is not allways true. Ernst-Ludwig Brust -- http://mail.python.org/mailman/listinfo/python-list
Re: Dict Comprehension ?
<[EMAIL PROTECTED]> schrieb im Newsbeitrag news:[EMAIL PROTECTED] > > from collections import defaultdict > da=defaultdict(int) > for x in [10]: >for y in [11]: >da[abs(x-y)]+=1 Thangs, collections are a real good idea. I will use this version. Ernsst-Ludwwig Brust -- http://mail.python.org/mailman/listinfo/python-list