У меня есть функция foo (i), которая принимает целое число и занимает значительное количество времени для выполнения. Будет ли значительная разница в производительности между любым из следующих способов инициализации a:
a = [foo(i) for i in xrange(100)]
a = map(foo, range(100))
vfoo = numpy.vectorize(foo)
a = vfoo(range(100))
(меня не волнует, является ли вывод списком или массивом numpy.)
Есть ли лучший способ?