У меня есть модуль, который интенсивно использует numpy
:
from numpy import array, median, nan, percentile, roll, sqrt, sum, transpose, unique, where
Лучше ли сохранять чистоту пространства имен, используя
import numpy as np
, а затем, когда мне нужноиспользовать array
просто использовать np.array
, например?
Этот модуль также вызывается многократно, скажем, несколько миллионов раз, и поддержание чистоты пространства имен, кажется, добавляет немного издержек?
setup = '''import numpy as np'''
function = 'x = np.sum(np.array([1,2,3,4,5,6,7,8,9,10]))'
print(min(timeit.Timer(function, setup=setup).repeat(10, 300000)))
1,66632
setup = '''from numpy import arange, array, sum'''
function = 'x = sum(array([1,2,3,4,5,6,7,8,9,10]))'
print(min(timeit.Timer(function, setup=setup).repeat(10, 300000)))
1,65137
Почему это добавляетбольше времени при использовании np.sum
против sum
?