
Optimizing the any function in python - ospohngellert
https://oliverspohngellert.com/Optimizing-Any.html
======
detaro
So you're artificially building something that's gives you some of the benefit
of using a generator expression in a list expression, instead of just using a
generator expression?

~~~
ospohngellert
I wouldn't call it artificially building something, but I suppose yes. I also
find this code to be much more readable than generator code. Once you
understand the function, all you have to do is pass it a function that returns
a boolean.

~~~
detaro
How is

    
    
        any(function_takes_time(i) for i in range(10 ** 3))
    

harder to read than

    
    
        fast_any([(lambda x: (lambda: function_takes_time(x)))(i) for i in range(10 ** 3)])

~~~
ospohngellert
The first one is clearly easier to read than the second. However the first one
is slow. I believe fast_any is easier to read than generator code.

~~~
ospohngellert
Actually, apologies I see now. I always associated generator's with the
`yields` keyword, but maybe I have to look into them again. Thanks!

