Эквивалентность Python встроенным функциям или макросам

Я только что понял, что выполнение

x.real*x.real+x.imag*x.imag

в три раза быстрее, чем выполнение

abs(x)**2

, где x - массив комплексных чисел. Для удобочитаемости кода я мог бы определить функцию вроде

def abs2(x):
    return x.real*x.real+x.imag*x.imag

, которая по-прежнему намного быстрее, чем abs (x) ** 2, но это происходит за счет вызова функции. Можно ли встроить такую ​​функцию, как я сделал бы в C, используя макрос или ключевое слово inline?

48
задан Charles Brunet 22 June 2011 в 04:02
поделиться