【Python】报错ModuleNotFoundError: No module named ‘XXX‘

简介: 【Python】报错ModuleNotFoundError: No module named ‘XXX‘

原因分析:

运行Python时,经常出现出现如下报错:

No module named ‘XXX’

出现这种原因一般分为两种:

情况一:如果 XXX 为第三方库,那么直接 pip install XXX,即可解决。

情况二: 如果 XXX 为自己写的模块,那么就需要按照如下方式解决。


问题解释:

运行Python时,提示无法导入自己写的模块:No module named ‘XXX’。这种很少出现在Pycharm中,这种情况一般会出现在使用cmd运行或 Ubuntu 终端运行(如下图):

原因:使用cmd或命令行运行python代码时,python会优先从三方库中去找import的文件(前提:python的环境变量已经设置好)。然而,自己写的模块并没有在环境变量中,因此会找不到。


修复该问题,有如下两种方式:

方法一(临时法):

在自己写的代码中,创建临时变量,将自己写的module加入临时环境变量中。

import sys
sys.path.append("你的工程文件夹路径")

★★注意★★: 这两句必须放在要执行的py文件的开头。

方法二(永久法):

将你所依赖的py文件,放到系统的第三方库的文件夹中,通常在这里:

C:\Users\XXXX\AppData\Local\Programs\Python\Python36\Lib\site-packages

(关注“测试开发自动化” 弓中皓,查看历史文章,获取更多知识)


相关文章
|
20天前
|
Linux 数据库管理 Python
CentOS7编译安装Python3.10(含OpenSSL1.1.1安装),创建虚拟环境,运行Django项目(含sqlite版本报错)
CentOS7编译安装Python3.10(含OpenSSL1.1.1安装),创建虚拟环境,运行Django项目(含sqlite版本报错)
123 4
|
18天前
|
Java Serverless 应用服务中间件
Serverless 应用引擎操作报错合集之部署python项目时,构建过程报错,怎么解决
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
5天前
|
XML 数据格式 Python
Python的`import`用于加载模块,基础形式是`import module`,全量导入
【6月更文挑战第23天】Python的`import`用于加载模块,基础形式是`import module`,全量导入;`from module import name`选择性导入部分,减少命名空间污染;`from module import *`导入所有(不推荐),易引发冲突。别名导入如`from math import sqrt as square_root`可避免冲突。包导入用`.`,如`import xml.etree.ElementTree as ET`。
27 8
|
4天前
|
搜索推荐 Python Windows
python中对于wordcloud词云生成报错提示的解决
通过搜索印象错误信息:ValueError:Only supported for TrueType fonts,几乎大部分人给出的选项都是让你指定TrueType fonts路径,或者新下载TTF字体,并重新指定,但是这两种解决方案并无法解决报错。 在真正解决问题之前,先来介绍几个与之相关的知识点,对于有经验的人,这样的知识点完全是“小菜”,但是对于初学者,这种知识点就是因为缺少相关实践而无从下手,无从搜索引擎。
|
9天前
|
Python
【Python3报错】Fatal error in launcher: Unable to create process using ……
【Python3报错】Fatal error in launcher: Unable to create process using ……
|
5天前
|
分布式计算 DataWorks 大数据
MaxCompute操作报错合集之pyODPS导入python包的时候报错,该怎么办
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
|
1月前
|
关系型数据库 Java 分布式数据库
实时计算 Flink版操作报错合集之在使用 Python UDF 时遇到 requests 包的导入问题,提示 OpenSSL 版本不兼容如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
45 5
|
1月前
|
SQL 分布式计算 算法
关于Python时间日期处理_跨月份python报错(1)
关于Python时间日期处理_跨月份python报错(1)
|
1月前
|
Python
Python使用飞桨报错NameError: name 'predict_system' is not defined问题处理
【5月更文挑战第12天】Python使用飞桨报错NameError: name 'predict_system' is not defined问题处理
637 1
|
1月前
|
监控 开发者 Python
Python中记录程序报错信息的实践指南
Python中记录程序报错信息的实践指南
25 1