Как исправить:% load_ext Cython -> Модуль Cython не является расширением IPython - PullRequest
0 голосов
/ 30 марта 2019

Я пытаюсь использовать Cython в интерактивном режиме в IPython 3.2.1 с использованием Python 2.7.5.в CentOS 7.5 и 7.6.Вот что я получаю:

 In [13]: %load_ext Cython
 The Cython module is not an IPython extension.

Конечно, я прочитал Модуль Cython не является расширением IPython и Cython в Ipython: ОШИБКА: Волшебство ячейки `%%cython` не найден , а также только что искал в сети.Советы оттуда не помогают (например, %load_ext не будет работать, используйте import cython).У меня даже создалось впечатление, что никто не сталкивался с этой проблемой, и если кто-то сталкивался с ней, ее легко решить («... сначала вы должны %load_ext Cython ...»).

Следует отметить, что в anaconda3, IPython 6.5.0, Python 3.6.6 то же самое (пример из книги Курта Смита) работает хорошо:

In [1]: %load_ext cython

In [2]: %%cython
   ...: def fib(int n):
   ...:   cdef int i
   ...:   cdef double a=0., b=1.
   ...:   for i in range(n): a, b = a+b, a
   ...:   return a
   ...: 
In [3]: fib(10)
Out[3]: 55.0

Я пытался прочитать орасширения IPython.К сожалению, я все еще в замешательстве.Ipython3 (6.5.0) от anaconda, ipython2 (3.2.1) от ОС, и в ОС также есть ipython3.Какой из них является каталогом ~ / .ipython?Общие?Кстати, оба каталога ~/.ipython/extensions/ и ~/.ipython/nbextensions/ пусты.Должны ли они содержать коды расширения?

Я осознаю неизбежную необходимость перехода на Python 3, но все же ... У меня много кода на Python 2, и на это требуется время.

Я бы хотел иметь возможностьиспользовать Cython в интерактивном режиме с Python2 и Python3 в их средах IPython.

Большое спасибо!

...