Программирование и научные вычисления на языке Python/§8: различия между версиями

Содержимое удалено Содержимое добавлено
Нет описания правки
Строка 210:
Это свойство и называется векторизацией. Существенный выигрыш в скорости по сравнению со списками происходит из-за того что в генерации списков используется относительно медленные циклы самого Python, в то время как векторизация их никак явно не использует, а задействует «быстрые циклы» внутри numpy. Кроме того, что векторизация существенно повышает скорость обработки, она делает код более понятным и ясным для чтения.
 
Но приведенный выше код не является "чистой векторизацией", в нем используется цикл for, без которого можно обойтись, если использовать тригонометрические функции из пакета numpy (которые поддаются векторизации):
 
<source lang="python">
from numpy import *
x=linspace(-pi,pi,11)
 
r = sin(x)*cos(x)*exp(-x**2) + 2 + x**2</source>
 
==Ссылки==