SystemError: динамический модуль не инициализирован должным образом при импорте подмодуля в подпапку

У меня проблема при импорте динамического модуля Python (pyd), моя файловая структура выглядит следующим образом:

A
|--A.py
+--B
  │--B.py
  │--__init__.py
  +--Crypto
     |--__init__.py
     +--Cipher
        |--__init__.py        
        |--_AES.pyd

A.py: from B import B

B.py: from Crypto.Cipher import _AES

при выполнении A.pyЯ получаю следующую ошибку:

SystemError: dynamic module not initialized properly

Импорт работает нормально, когда я выполняю B.py, Кроме того, если я перееду Crypto в другое место и добавьте эту папку в sys.pathимпорт все еще работает нормально.

Ошибка возникает, когда B.py и Crypto находятся в одной папке, но B был импортирован другим файлом, который не находится в том же каталоге.

1 ответ

Попробовав различные факторы, я думаю, что к модулю добавляется относительное имя пути. Это должно быть ошибкой, вызванной функцией относительного импорта python.

Другие вопросы по тегам