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

无需安装模块,如何在子目录脚本中导入common下的模块?

无需安装模块的Python导入方案

针对你的项目结构,以下几种方法可以解决ModuleNotFoundError问题,且适合非Python用户使用:

方法1:动态添加项目根目录到Python路径

在batch_process_raw_data.py开头添加这段代码,让脚本自动识别并添加项目根路径:

import os
import sys

# 获取当前脚本的绝对路径所在目录
current_script_dir = os.path.dirname(os.path.abspath(__file__))
# 定位到项目根目录(final文件夹)
project_root = os.path.dirname(current_script_dir)
# 将根目录加入Python搜索路径
sys.path.append(project_root)

# 现在可以正常导入目标模块
from common import batch_data_processing

这种方式完全不需要用户操作,脚本自行处理路径,对非技术用户最友好。

方法2:使用相对导入(需规范运行方式)

如果项目以包结构运行,可采用相对导入:

from ..common import batch_data_processing

但要求必须从final的上级目录以模块方式启动脚本,命令如下:

python -m final.Processing_raw_data.batch_process_raw_data

这种方式需要用户执行指定命令,适合能简单操作终端的用户。

方法3:用启动脚本封装环境变量配置

为非Python用户封装启动脚本,把路径配置藏在脚本里,用户只需双击或执行脚本即可:

Windows批处理脚本(放在final文件夹下,命名为run.bat)

@echo off
set PYTHONPATH=%~dp0
python Processing_raw_data\batch_process_raw_data.py

Linux/macOS Shell脚本(放在final文件夹下,命名为run.sh)

#!/bin/bash
export PYTHONPATH=$(pwd)
python Processing_raw_data/batch_process_raw_data.py

用户无需理解路径原理,直接运行启动脚本就能执行程序。

内容的提问来源于stack exchange,提问作者Kamel O.L.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 14:57:28