Python from import导包ModuleNotFoundError No module named,找不到模块问题

本文记录在使用Flask框架时遇到的'from .module import' 导包出现ModuleNotFoundError的问题。分析了import与from ... import的区别,并提供了绝对路径和相对路径两种解决方案,强调了Python搜索模块路径集sys.path的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


在学习Flask框架的蓝图时,遇到导包时用到了`from . 模块 import 对象`,然后试了试直接 import会报错,直接告诉我找不到模块,发现问题以此记录。

场景

有一个flask框架的项目,目录结构如下:

有一个主包pro_flask,然后下面有两个子包admin和web,还有和pro_flask同级的启动文件

在这里插入图片描述

我在与admin和web同级的__init__.py文件中,导入admin和web里的一些资源。

代码如下:

在导入admin和web中的资源时,告诉我ModuleNotFoundError: No module named 'admin'

from flask import Flask

# 以下 import的admin和web,是admin和web包下__init__.py中定义的对象
from admin import admin		# 项目启动后,这里会报错
from web import web		# 项目启动后,这里会报错

admin包下的__init__.py文件

from flask import Blueprint

admin = Blueprint(				# 需要在其他模块中导入这个 admin 蓝图对象
    'admin',
    __name__,
    template_folder='templates
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值