Какой из них лучше подходит для понимания списка в python (с точки зрения времени вычисления и циклов процессора). В примере (1) - значение f (r), оцениваемое на каждой итерации, или оно оценивается один раз и кэшируется?
-
y = [x*f(r) for x in xlist]
-
c = f(r)
y = [x*c for x in xlist]
где
def f(r):
... some arbitrary function ...