Cython в Ipython: ОШИБКА: Cell magic `%% cython` не найден

При использовании cython в ноутбуке ipython я вижу ошибку ниже. Что не так?

%load_ext cythonmagic
/usr/local/lib/python2.7/dist-packages/IPython/extensions/cythonmagic.py:21: UserWarning: The Cython magic has been moved to the Cython package
      warnings.warn("""The Cython magic has been moved to the Cython package""")



%%cython
def fib(int n):
    cdef int a,b,i
    for i in range(n):
        a,b=a+b,b
    return a 

ERROR: Cell magic `%%cython` not found.

Ответ 1

То, что предупреждает попытка связи, заключается в том, что расширение, определяющее магию %%cython, переместилось в пакет Cython из пакета IPython. Поэтому вместо

%load_ext cythonmagic

вам следует:

%load_ext Cython

После этого магия cython должна работать как ожидалось.

Ответ 2

Не забудьте загрузить расширение в другую ячейку.

Если вы загрузите и используете расширение Cython в той же ячейке, вы получите ошибку:

Используя ту же ячейку:
Here the function does not exist

Использование другой ячейки:
This will work