明明Pycharm里面都能运行,为什么在CMD中就不能运行了呢,报ImportError: No module named ‘config‘ 的错误

当在Pycharm中能正常执行的Python程序在CMD中运行时出现ModuleNotFoundError,原因是CMD的搜索路径不同。解决办法是通过sys.path.append()添加模块的绝对路径到环境变量。确保在import模块前添加该路径,这样CMD就能找到所需的模块,从而避免导入错误。

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



提示:以下是本篇文章正文内容,下面案例可供参考

的
我将要执行这个test_case.py,要导入不根目录下的目录config下yamload.yp模块时(这些是自己定义写的函数、模块),在Pycharm是可以正常执行的,但在cmd命令却报错。ModuleNotFoundError: No module named 'config’错误

没有‘config’

一、Pycharm可以执行,而cmd报错?

原来是因为cmd遍历的文件方式与Pycharm的不一样。

二、解决办法

1.将要执行的模块或者.py文件加入环境变量中

代码如下(示例):

import sys
sys.path.append("D:/Code/python_code/学习/项目/接口测试_Pytest框架/POM设计模型/test01")

sys.path.append(“你要导入的模块的路径”")

那CMD从哪里开始遍历呢?CMD从当前所在位置开始遍历,当前路径如下:
D:\Code\python_code\学习\项目\接口测试_Pytest框架\POM设计模型\test01\test_case
遍历test_caset文件夹并没有找到config这个文件夹,…那当然就找不到我们需要的模块了。
那咋办呢?既然需要找到config文件夹,那我们把这个文件夹加入遍历中不就行了吗?
使用sys.path.append()就可以加入了,需要传入绝对路径.我们可以如下添加:
import sys
sys.path.append(“D:/Code/python_code/学习/项目/接口测试_Pytest框架/POM设计模型/test01”)

2.注意

代码如下(示例):
一定要在未import config中的模块之前,先将sys.path.append(“要导入的文件路径”)加入环境变量中,不然也会报错。
如下图,是原来未加入sys.path.append()


from config.yamlload import loadyaml

在这里插入图片描述

3.加入sys.path.addpend()后

加入sys.path.append()之后,如下图位置

在这里插入图片描述

4.然后再运行,就可以成功!!!

在这里插入图片描述

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值