1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| from time import clock
def t(f,*args):
t0 = clock()
f(*args)
return clock() - t0
from random import randint
l = [randint(-100,100) for _ in xrange(1000000)]
def map1():
map(abs,l)
def map2():
[abs(i) for i in l]
def odd(n):
return n & 1
def map_filter1():
map(abs, filter(odd, l))
def map_filter2():
[abs(i) for i in l if odd(i)]
def map_filter3():
[abs(i) for i in l if i & 1]
print 'map1:', t(map1), 's'
print 'map2:', t(map2), 's'
print 'map_filter1:', t(map_filter1), 's'
print 'map_filter2:', t(map_filter2), 's'
print 'map_filter3:', t(map_filter3), 's' |