解决vscode找不到Python自定义模块,报错No module named ‘xxx‘

这篇具有很好参考价值的文章主要介绍了解决vscode找不到Python自定义模块,报错No module named ‘xxx‘。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

笔者最近在学习python过程中,把在pycharm运行成功的项目放在vscode中,发现一些报错,比如找不到笔者自定义的模块,参考了一些说法与办法,现将解决方法记录于此。

前言

vscode之所以找不到自定义模块,与其PYTHONPATH有关。笔者的目录结构如图所示:

解决vscode找不到Python自定义模块,报错No module named ‘xxx‘

经过实践,发现如果do_mysql.py与testDatas同级,则上述语句可以引入成功,如果do_mysql.py引入同级do_excel.py:import do_excel,也是可以成功的。

但是导入模块:from testDatas import filePath,报错No module named 'testDatas'

目标:在do_mysql.py中引用filePath.py()

既然引用报错,说明从当前文件结构中找不到testDatas,我们可以导入sys,输出sys.path,查看当前的路径有哪些:

解决vscode找不到Python自定义模块,报错No module named ‘xxx‘

可见这些路径中与笔者项目有关的只有第一个,且为do_mysql.py的目录,所以找不到testDatas。因此,要想引入filePath.py,需要先找到testDatas,所以有以下两种方法:

解决方法

方法一

绝对路径的方式将路径追加到sys.path(“D:\pro\interfaceTest”是笔者的项目路径):

import sys
sys.path.append("D:\pro\interfaceTest")

相对路径的方式将路径追加到sys.path:

import os
import sys
sys.path.append(os.path.join(os.path.dirname(__file__), '../testDatas'))

在当前项目的.vscode(是一个隐藏目录)下的setting.json(如果没有该文件,可自行新增)中添加:

{
    "python.analysis.extraPaths": ["./testDatas"]
}

点击右上角的运行按钮,生效啦!

方法二

方法一虽然可以生效,但是每个文件都要来这么一下,着实烦人,我们可以配置一下模块的路径,方便下一次引入。

首先在.vscode下的launch.json中添加"env": {"PYTHONPATH": "${workspaceRoot}"}:

{
  "version": "0.2.0",
  "configurations": [
    {
      // 省略其他
      "env": {"PYTHONPATH": "${workspaceRoot}"}
    }
  ]
}

在.vscode下的settings.json中添加:

{
  // 省略其他
  "terminal.integrated.env.windows": {
    "PYTHONPATH": "${workspaceFolder};${env:PYTHONPATH}"
  }
}

保存上述文件,在do_mysql.py中F5一下,发现生效啦!!!但是点击右上角的运行按钮,仍然报错No module named 'testDatas',没关系,只需要重启一下vscode,再次运行,就可以成功啦!

再次验证

此时我们可以输出sys.path看一下:

解决vscode找不到Python自定义模块,报错No module named ‘xxx‘

发现已经将interfaceTest目录加载进来了!文章来源地址https://www.toymoban.com/news/detail-417216.html

到了这里,关于解决vscode找不到Python自定义模块,报错No module named ‘xxx‘的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python中导入logru模块 报错 No module named loguru

    1、导入日志模块异常报错 报错信息: from loguru import logger E   ModuleNotFoundError: No module named  loguru 2、解决方案:安装logru 方案1:pycham编辑器 -- 文件 -- 设置  该方式有时候安装不成功 方案2:打开终端 pip install logru 该方式比较慢,偶尔也会出错 方案3:打开终端 pip install log

    2024年02月11日
    浏览(99)
  • vue3 报错解决:找不到模块或其相应的类型声明。(Vue 3 can not find module)

    当我们在引入应该组件的时候 提示找不到这个组件但是项目明明就有这个物理文件 报错原因:typescript 只能理解 .ts 文件,无法理解 .vue文件 出现这样的 第一种 方法就是在env.d.ts 里面添加下面代码    如图   第二种 这个时候我们应该这样 首先 原因: 1、volar 插件没开take

    2024年03月09日
    浏览(61)
  • Python 报错 no module named torch 的解决方案

    在 Python 中使用 PyTorch 时,经常会碰到 no module named torch 的错误。本文总结了此错误出现的主要原因及对应的解决方法。 想在 Python 中调用 PyTorch,首先得安装它。可以在终端运行: 来安装 PyTorch 和相关库。 如果安装了 PyTorch 的旧版本,但代码中需要较新版本的 API,也会出现此错误

    2024年02月08日
    浏览(42)
  • Python报错:ModuleNotFoundError: No module named ‘xxx‘,如何解决?

    Python报错:ModuleNotFoundError: No module named \\\'xxx\\\',如何解决? 在Python开发中,经常会遇到报错信息\\\"ModuleNotFoundError: No module named \\\'xxx\\\'\\\"的问题。这个错误通常是由于没有正确安装或导入所需的模块导致的。本文将探讨这个问题的解决方法,并提供一些实际的代码示例。 为了说明这个

    2024年02月05日
    浏览(41)
  • 完美解决:Python3.10报错 No module named ‘_ssl‘

    报错详情: 操作系统为centos7,python版本为3.10.7,openssl版本为3.0.5,运行gunicorn报No module named \\\'_ssl\\\' 原因就是python3.10和openssl3.0.5的版本配置文件跟以前有点区别,python3.10的版本OPENSSL不再是/usr/local/ssl 的默认路径,变成了/path/to/openssl/directory,已经提示得很明白了让你在这里写入

    2024年02月12日
    浏览(33)
  • 在Python中导入gurobipy模块显示ModuleNotFoundError: No module named ‘gurobipy‘的解决办法

    笔者在学习用python+Anaconda+gurobi求解优化问题时遇到了这个问题,看了很多帖子的方法都没有解决,所以这里分享一下自己的解决办法。 首先找到自己用的Anaconda3所在位置,这里不再赘述。 下拉文件夹找到envs,双击PythonProject,找到Lib文件夹,CtrlC+CtrlvV放进去配套的gurobipy文件

    2024年02月15日
    浏览(47)
  • 【已解决】Python打包文件执行报错:ModuleNotFoundError: No module named ‘pymssql‘

    今天打包一个 tkinter + pymssql 的项目的时候,打包过程很顺利,但是打开软件的时候,报错 ModuleNotFoundError: No module named \\\'pymssql\\\' 如下图: 查了好多资料才知道:打包程序无法判断 pymssql 动态调用,其中的 _mssql 方法是动态调用的,就是用才调用,不会一开始就调用,于是打包程

    2024年02月07日
    浏览(29)
  • VSCode报错ModuleNotFoundError: No module named ‘numpy‘

    在vscode环境里遇到ModuleNotFoundError: No module named \\\'组件名\\\' 这样的问题,如果确信模块已经安装,但仍旧提示找不到模块的错误,很有可能是模块安装的环境和vscode里python解释器的环境不一致。 解决方法: 1. 在VSCode中,打开或新建一个Python文件。 2. 按下快捷键 Ctrl + Shift + P (或

    2024年03月21日
    浏览(36)
  • VScode import导入自己的模块文件路径错误ModuleNotFoundError: No module named ‘v0‘

    VScode的python报错 ModuleNotFoundError: No module named ‘v0’ 我的工作区文件夹打开的是server,文件相对路径是: server/v0/train_ddpg.py,其中的部分导入import代码如下,v0是上一级文件夹 from v0.cli import cli_train from v0.config import config_dict 不想修改代码,因为需要改的地方太多了,而只通过

    2024年02月04日
    浏览(22)
  • python import 自定义包或者.py文件时出现:ModuleNotFoundError: no module named “xxx“的解决办法

     以我代码为例,想在 Training_test 包下的 advCNN_training.py 模块里  导入 Model 包下面的 advDA_net.py、CNN_model.py 模块, 1. 使用 from 自定义包 XX . 模块名 XX import XX 出现报错: ModuleNotFoundError: No module named \\\'Model\\\' 解决方案1: 第一步:检查包是否设置“根 源”文件(未设置“源 根”的文

    2024年02月15日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包