【问题标题】:ImportError: dynamic module does not define module export functionImportError:动态模块未定义模块导出功能
【发布时间】:2023-03-10 20:33:01
【问题描述】:

我不断收到标题中的 ImportError。我认为这可能是 python 2 和 python 3 的问题,因为在 python 2.7 上它运行得很好。但是,我在 python 3 上需要它并且不断收到错误,我什至不知道在哪里修复它。

已经有很多关于这个的帖子,但是每个帖子都找到了一个对我不起作用的独特解决方案。

详细说明我的项目,以防可能有完全不同的解决方案:我正在尝试获取YDLidar TG30 和在 Raspberry Pi 4 上工作的相机。我想制作一个带有 GUI 的简单小程序,供工作人员使用建筑工地可以用来查看激光雷达数据并保存配置文件和图片。为此,我想使用 Python 3,因为这就是我所知道的。

返回 ImportError:在 python 3 文件中调用 import ydlidar 时,我收到以下错误消息:

Traceback (most recent call last):
  File "/home/pi/.local/lib/python3.7/site-packages/ydlidar.py", line 14, in swig_import_helper
    return importlib.import_module(mname)
  File "/usr/lib/python3.7/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 670, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 583, in module_from_spec
  File "<frozen importlib._bootstrap_external>", line 1043, in create_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
ImportError: dynamic module does not define module export function (PyInit__ydlidar)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "lidar_test_4.py", line 2, in <module>
    import ydlidar
  File "/home/pi/.local/lib/python3.7/site-packages/ydlidar.py", line 17, in <module>
    _ydlidar = swig_import_helper()
  File "/home/pi/.local/lib/python3.7/site-packages/ydlidar.py", line 16, in swig_import_helper
    return importlib.import_module('_ydlidar')
  File "/usr/lib/python3.7/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
ImportError: dynamic module does not define module export function (PyInit__ydlidar)

我正在尝试使用的 YDLidar-SDK 可以在 GitHub 上找到。

【问题讨论】:

    标签: python-3.x python-2.x raspberry-pi4 lidar


    【解决方案1】:

    好吧,我仍然不知道错误是什么,但我设法通过使用 python 3 创建一个 venv 并在此 env 中重新安装整个 SDK 来解决它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-30
      • 2016-08-11
      • 1970-01-01
      • 2016-03-21
      • 1970-01-01
      • 2021-12-17
      相关资源
      最近更新 更多