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

Python项目自定义模块导入失败(ModuleNotFoundError)求助

解决Python自定义模块导入问题

问题原因

你的导入报错是因为Python解释器找不到calcs模块的路径。虽然calcs目录有__init__.py,但运行test_calcs.py时,Python默认只会把当前脚本所在的myapp/tests/目录加入搜索路径,不会自动向上识别myapp/下的模块。

解决方法

这里提供几种实用的解决方式:

方法1:修改Python路径(临时生效)

在test_calcs.py开头添加代码,把myapp目录加入Python的搜索路径:

import sys
from pathlib import Path

# 获取myapp目录的绝对路径
sys.path.append(str(Path(__file__).parent.parent))

from calcs import calculations as clc

方法2:使用相对导入

在test_calcs.py里用相对导入语法,注意运行时要以myapp作为顶层包目录(不能直接运行test_calcs.py):

from ..calcs import calculations as clc

运行测试时需要在myapp的上级目录执行:

python -m myapp.tests.test_calcs

方法3:将项目安装为可编辑包(推荐)

在myapp目录下创建setup.py或pyproject.toml,把项目安装为可编辑模式,这样Python就能全局识别你的模块。

比如创建setup.py:

from setuptools import setup, find_packages

setup(
    name="myapp",
    version="0.1",
    packages=find_packages(),
)

然后在myapp目录下执行:

pip install -e .

之后就能直接在test_calcs.py里用原来的导入语句了。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 04:40:23