栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python自定义包出现ModuleNotFoundError: No module named ‘package

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python自定义包出现ModuleNotFoundError: No module named ‘package

问题描述:首先我们需要了解如何去自定义一个包。我看到一篇不错的文章,链接如下:

[Python]自定义包及3种包导入方式_祥的专栏-CSDN博客_python 自定义包

但是,当我完成了博主所说的步骤时发现了如下错误:

 问题分析:其实这个还是没有找到包的原因。经过仔细分析我发现,其实是我将path的路径搞错了。我们只需要将我们所在的工程文件的路径加入path即可,而不需要精确到每个包的路径。即如下图所示:

 我们的包是在lib文件夹下的,路径是:"E:Study_FilePython_Exampleprojectproject_0lib",然而我们只需要将path加入路径:"E:Study_FilePython_Exampleprojectproject_0"即可,即整个工程的路径。事实证明,我们必须要精确到工程的路径,不能使用例如:"E:Study_FilePython_Exampleproject"这样的路径,这样也会报错无法找到包。

问题解决:我在下面贴出我参考过的文章,供大家参考。

解决python3 导入自定义模块失败_qq1154479896的博客-CSDN博客_python导入模块失败

python 自定义包的导入失败_少游-CSDN博客_python 导入自定义包失败


上面的问题确实可以解决,但是还是可能有会有人import失败,因为上面对import有一定的要求!如下:

import package.mode #正确引用方法

如果我们使用其他引用方法的话,其实是会报错的!如下:

#方法一:
form package import mode #会报错
____________________________________________________

#方法二:

import package

package.mode.function  #也会报错
————————————————————————————————————————————————————————

那么我们应该如何解决这样引用失败的问题呢,其实我们只需要在__init__.py文件中impot所有需要的mode(类似于c语言中的头文件的作用),如下:
 

#__init__.py

import package.mode_0
.
.
.
import package.mode_1

好了,至此,我们应该已经解决了大部分自定义库、包、模块的引用中肯出现的问题了。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/753470.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号