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

PCAP学习:跨目录导入Python模块遇ModuleNotFoundError求助

跨目录导入Python模块报错ModuleNotFoundError的原因与解决办法

核心原因:路径分隔符不兼容

macOS(类Unix系统)使用**正斜杠/**作为路径分隔符,而你代码里写的..\pyImport是Windows系统的反斜杠格式,Python在macOS环境下无法正确解析这个路径,导致找不到目标目录。

额外需要确认的问题

  1. 相对路径的基准目录
    Python中相对路径的基准是终端当前的工作目录,而不是脚本文件所在的目录。如果你的终端工作目录不是pyWorks目录,..\pyImport指向的位置会完全错误。推荐用脚本的绝对路径来拼接目标路径,避免这个问题:
    import sys
    import os
    # 获取当前脚本的绝对路径所在目录
    script_dir = os.path.dirname(os.path.abspath(__file__))
    # 拼接上级目录下的pyImport路径并添加到sys.path
    target_path = os.path.join(script_dir, '..', 'pyImport')
    sys.path.append(target_path)
    # 导入模块
    from extra.iota import funI
    
  2. 包的识别问题
    确保extra文件夹内存在__init__.py文件(Python 3.3+支持无该文件的命名空间包,但部分场景下仍需此文件标记为Python包)。
  3. 大小写敏感
    macOS文件系统默认大小写敏感,检查extra文件夹的拼写是否和代码中的导入语句完全一致(比如Extra和extra会被视为不同目录)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 13:34:57