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

Python子目录模块导入问题:如何在module1.py中导入lib.py

在指定目录结构下从module1.py导入lib.py的方法

目录结构说明:

根目录/
├── lib/
│   └── lib.py
└── module1/
    └── module1.py

以下是几种可行的导入方法:

  • 临时修改Python搜索路径
    在module1.py中添加代码,将lib目录的绝对路径加入sys.path(Python的模块搜索路径):

    import sys
    from pathlib import Path
    
    # 获取lib目录的绝对路径
    lib_dir = Path(__file__).parent.parent / "lib"
    sys.path.append(str(lib_dir))
    
    # 导入lib模块
    import lib
    

    这种方法无需额外配置,适合临时场景。

  • 使用相对导入(需将项目作为包)

    1. 在根目录下创建空的__init__.py文件,让根目录成为Python包。
    2. 在module1.py中使用相对导入语法:
      from ..lib import lib
      

    注意:必须从根目录的外部以模块方式运行脚本,比如在根目录的父目录执行:python -m 根目录.module1.module1,不能直接在module1目录下运行module1.py。

  • 通过环境变量设置全局搜索路径
    运行脚本前,将根目录路径添加到PYTHONPATH环境变量:

    • Linux/macOS终端:
      export PYTHONPATH="/path/to/根目录:$PYTHONPATH"
      python module1/module1.py
      
    • Windows命令提示符:
      set PYTHONPATH=C:\path\to\根目录;%PYTHONPATH%
      python module1\module1.py
      

    设置完成后,module1.py中可直接导入:

    import lib
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 13:30:56