首页 > 编程语言 >解决Python运行脚本时ModuleNotFoundError: No module named 'xxx'报错

解决Python运行脚本时ModuleNotFoundError: No module named 'xxx'报错

时间:2023-03-21 12:24:40浏览次数:50  
标签:named No py sys api 报错 conf test import

自己写的项目直接在Pycharm里run或debug没问题,但使用cmd命令通过python xxx.py运行脚本,如果脚本import了其他文件的方法就会报错:ModuleNotFoundError: No module named 'xxx'。

例如:

项目auto_test结构:

├──conf.py  # 配置文件
└──api      
│ ├── testcases

│ │ ├── test_api.py  

在test_api.py里from conf import *,在cmd里运行 python auto_test/api/testcases/test_api.py就会报ImportError错。

解决方法:

在import之前把conf.py所在目录路径添加到sys.path里。

test_api.py

import os, sys

curPath = os.path.dirname(__file__) # 获取test_api.py文件所在目录路径
sys.path.append(curPath+'/../../')  # 根据conf.py与test_api.py的相对路径添加到sys.path

from conf import *
...

注意自己项目的目录结构,根据自己的情况添加。

 

 

标签:named,No,py,sys,api,报错,conf,test,import
From: https://www.cnblogs.com/IdaW/p/17239543.html

相关文章

  • ssh报错:WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
    一、现象ssh远程连接服务器时,显示如下提示 二、原因WARNING:REMOTEHOSTIDENTIFICATIONHASCHANGED!翻译过来就是警告:远程主机标识已更改!此报错是由于远程的主......
  • Noah-MP陆面过程模型建模
    【原文链接】:Noah-MP陆面过程模型建模方法与站点、区域模拟实践技术【方式】:直播+永久回放+长期答疑群辅助+全套资料【目标】:了解陆表过程的主要研究内容以及陆面模型在......
  • docker bash: xxx : command not found
    1.现象:在容器内执行route命令会报错 bash:route:commandnotfound2.原因容器内没有安装route命令3.解决办法(1)bash: ip:commandnotfoundapt-getupdate&&a......
  • Can not set java.lang.String field com.jsedc.log.pojo.entity.voSyslogV0.happenT
    未加泛型约束的result,其List中的实体对象会被序列化为LinkedHashMap,实际结构为Result<List<LinkedHashMap<String,String>>>导出excel时对象赋值失败......
  • nvm: node版本管理
    前端在实际开发中,有时需要不同的node版本,这时就需要一个node版本管理工具在Mac中,我们使用nvm来管理node的不同版本安装安装nvmbrewinstallnvm配置配置~/.base_pro......
  • Oracle-nologging 应用
    我们在使用MSSqlServer时,为了提高DML速度,往往会用nolog来设置语句不写日志,这样语句执行过程就会快一些。同样,在删除数据时,也会用truncatetabletbName来替代delete......
  • 什么是webpack、npm、node、nodejs?他们之间有什么区别?
     最近在学一学前端的东西,发现前端技术栈有几个概念有些分不清,比如接触Vue后,对Vue-Cli有了解后,仅仅知道Vue-Cli是一个Vue项目的脚手架,可以快速的构建一个Vue的基于Npm的模......
  • Centos下安装Node 环境
    一、Node.js安装包下载[root@izvf8kkg6lhgidzlocal]#cd/usr/local/[root@izvf8kkg6lhgidzlocal]#wgethttps://nodejs.org/dist/v14.15.1/node-v14.15.1-linux-x64......
  • [NOIP2002]过河卒
    [NOIP2002]普及组]过河卒小结定义两个long型数组,代表棋盘和存放......
  • python 报错"ValueError: dictionary update sequence element #0 has length 6; 2 is
    python报错"ValueError:dictionaryupdatesequenceelement#0haslength6;2isrequired"现象   分析根据报错分析,应该是字典或格式有问题,检查发现LOGGING......