ImportError: dynamic module does not define module export function

ImportError: dynamic module does not define module export function

我一直在标题中收到 ImportError。我认为 python 2 和 python 3 可能有问题,因为在 python 2.7 上它运行得很好。我在 python 3 上需要它,但一直出现错误,我什至不知道去哪里修复它。

已经有多个 post 与此相关,但每个人都找到了一个不适合我的独特解决方案。

我的项目的详细信息,以防可能有一个完全不同的解决方案:我正在尝试让一个 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 创建一个 venv 并在此环境中重新安装整个 SDK 来解决它。