Вызов scipy из расширения C

Я хотел бы загрузить один из scipy-модулей (scipy.linalg) внутри функции, которая экспортируется из расширения python, написанного на C++, чтобы затем вызвать из него функцию. Было бы лучше, если бы пользователю не нужно было заранее загружать модуль в свою программу на Python (поэтому PyImport_AddModule не является решением). Код с использованием высокого уровня PyImport_Import вот так

pckg_name = PyString_FromString("scipy.linalg");
pckg = PyImport_Import(pckg_name);`

работает, как рекомендовано здесь, за исключением того, что в Python 3.6 он выдает предупреждающее сообщение перед работой.

C:\Program Files\Python36\lib\importlib\_bootstrap.py:205: 
ImportWarning: can't resolve package from __spec__ or __package__, 
falling back on __name__ and __path__
return f(*args, **kwds) 

Что означает сообщение? Его присутствие говорит о том, что я делаю это неправильно. Как правильно это сделать?


person JeremyR    schedule 12.07.2017    source источник
comment
У меня похожая проблема в большой кодовой базе, но я не могу найти причину ошибки. python -W error, похоже, не влияет на это предупреждение, и мне не кажется, что я могу поймать/подавить это с помощью фильтра.   -  person uayebforever    schedule 17.02.2018