You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Raspberry Pi Pico上MicroPython无法导入lib文件夹模块的问题

解决MicroPython Pico模块导入找不到函数的问题

问题根源

MicroPython识别包结构时,要求目录下必须存在__init__.py文件,你的/lib/test_mod/目录里只有test_mod.py,缺少这个初始化文件,导致Python无法将该子目录识别为可导入的包。同时导入路径也没匹配正确的层级结构。

具体修复步骤

  1. 添加包初始化文件
    在/lib/test_mod/目录下创建一个空的__init__.py文件,无需写任何代码,它的作用是告诉MicroPython这个目录属于Python包范畴。

  2. 选择正确的导入方式
    现在有两种实用的导入方案:

    • 方案一:直接导入子模块
      from lib.test_mod import test_mod
      test_mod.do_stuff()
      
    • 方案二:简化调用流程
      在__init__.py中添加一行导出代码:
      from .test_mod import do_stuff
      
      之后就可以直接导入函数或包来调用:
      # 直接导入函数
      from lib.test_mod import do_stuff
      do_stuff()
      
      # 或者导入整个包
      import lib.test_mod as tm
      tm.do_stuff()
      
  3. 确认最终文件结构
    确保文件层级完全符合以下结构:

    /
    └── lib/
        └── test_mod/
            ├── __init__.py
            └── test_mod.py
    

额外检查项

  • 不要直接用import test_mod,MicroPython会优先在当前脚本所在目录查找模块/包,找不到才会去/lib目录检索,你的test_mod是/lib下的子包,直接这样导入无法定位到正确模块。
  • 检查test_mod.py里的函数定义:确保函数名拼写正确,且函数顶格定义(没有缩进错误),示例正确写法:
    def do_stuff():
        print("执行操作")
    

内容的提问来源于stack exchange,提问作者Simon Monk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 09:42:06