On Tuesday, 19 January 2016 12:58:28 UTC+5:30, Arshpreet Singh wrote: > I was playing with Generators and found that using Generators time is bit > more than list-comprehensions or I am doing it wrong? > > > Function with List comprehensions: > > def sum_text(number_range): > return sum([i*i for i in xrange(number_range)]) > > %timeit sum_text(100000000) > 1 loops, best of 3: 14.8 s per loop > > Using generator Expressions: > > def sum_text(number_range): > > return sum((i*i for i in xrange(number_range))) > > %timeit sum_text(100000000) > > 1 loops, best of 3: 16.4 s per loop
Or even when I use generator function: def sum_text(number_range): yield sum((i*i for i in xrange(number_range))) another function to get value: def get_sum(): for i in sum_text(100000000): return i %timeit get_sum() 1 loops, best of 3: 16.1 s per loop -- https://mail.python.org/mailman/listinfo/python-list