【问题标题】:SystemError: dynamic module not initialized properly, when import sub module under a sub folderSystemError:在子文件夹下导入子模块时,动态模块未正确初始化
【发布时间】:2017-06-06 21:29:19
【问题描述】:

我在导入动态 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.pyCrypto在同一个文件夹下,但B被另一个不在同一目录下的文件导入时,就会出现错误。

【问题讨论】:

    标签: python import aes pyd


    【解决方案1】:

    在尝试了各种因素之后,我认为是模块被附加了一个相对路径名。 这应该是python相对导入特性导致的bug

    【讨论】:

    • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-15
    • 2021-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多