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

如何从非同级目录结构的其他文件夹导入Python模块

平级目录下跨文件夹导入Python模块实现方法

首先明确你的目录结构(两个目录处于同一父级目录下):

项目根目录/
├── Scripts/
│   └── app.py
└── Keymaker/
    └── keymaker.py

推荐实现方案(兼容性最好,不受项目存放路径影响)

  • 先给Keymaker目录添加一个空的__init__.py文件,把目录标记为可导入的Python包,兼容所有Python版本,避免隐式命名空间包带来的奇怪导入问题。
  • 在app.py文件的最顶部添加如下代码,动态将项目根目录加入Python的模块搜索路径,之后就可以正常导入目标模块:
import sys
from pathlib import Path

# 动态获取项目根目录路径:当前app.py在Scripts文件夹下,往上跳一级就是两个目录共同的父级根目录
root_path = Path(__file__).parent.parent.resolve()
sys.path.append(str(root_path))

# 正常导入keymaker模块即可使用
from Keymaker import keymaker

临时运行方案(仅对单次命令生效)

如果你不想修改代码,也可以在运行脚本时临时指定模块搜索路径:

  • 先进入项目根目录打开终端
  • Windows系统(cmd环境)执行命令:
    set PYTHONPATH=%cd% && python Scripts/app.py
  • Linux/macOS系统执行命令:
    PYTHONPATH=$(pwd) python Scripts/app.py

注意:不要在代码里写死本地绝对路径(比如sys.path.append("C:/myproject")),否则项目移动位置、换设备运行时会直接导入失败。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.20 16:15:50