No module named ‘xxx‘

python 包间模块的互相调用

问题描述

在pycharm中进行包模块的调用时可以整成运行 ,但在命令行中却出现报错。

ModuleNotFoundError: No module named 'quadratic_weighted_kappa'

分析原因

在IDE写代码,通过“创建project——创建package——创建py文件”建立模块,编辑完成后运行,包间模块的调用没有问题。因为这个过程中,IDE自动记录了包和模块之间的依赖关系,此时调用当前包外的同一个project下的文件不成问题。
若将代码以命令行的形式运行,那就会出现上述的问题。

解决方案

答主首先尝试了将报错的文件名称和包名称进行了更改,发现依然会出现同样的报错,由此分析原因不是名称重复问题。后网上检索查得以下解决办法:

  1. 在project根目录下创建文件__main__.py
  2. 命令行切换到project根目录下 执行python -m
  3. 文件路径,注意,这个时候文件路径的最后是没有.py后缀的

第二种方法
在每个需要调用外部包模块的文件头添加

import sys
sys.path.append('引用模块地址')
#例如
import sys
sys.path.append("D://TEST//PYTHON")
../ 表示当前文件所在的目录的上一级目录
./ 表示当前文件所在的目录(可以省略)
/ 表示当前站点的根目录(域名映射的硬盘目录)

解决方法参考:
https://blog.csdn.net/hustqb/article/details/60133776

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 这个错误提示意味着 Python 找不到名为 xxx 的模块。可能是因为你没有安装该模块,或者安装的位置不在 Python 的搜索路径中。你需要检查一下你的代码和环境设置,确保模块已经正确安装并且可以被 Python 找到。 ### 回答2: "No module named xxx"是一个Python常见的错误提示,意味着Python无法找到对应名为xxx的模块。这个问题通常需要针对不同情况进行分析解决。 1. 检查系统环境变量和Python路径是否正确。Python运行时需要找到模块的位置,常见的路径包括系统Python库、用户自定义的库和当前工作目录。如果模块没有正确安装或没有在Python路径中添加相应位置,则会出现"No module named xxx"错误。 2. 确认模块是否已经安装。如果使用pip安装了模块,则可以使用"pip list"命令查看已安装的模块列表,或者使用"pip show xxx"命令查看xxx模块的详细信息。如果模块没有被安装,则可以使用"pip install xxx"命令来安装。 3. 检查代码中是否拼写错误或错误使用模块名称。如果模块名称被拼写错误,或者在代码中的引入模块语句出现错误,则Python会无法找到指定的模块并且报"No module named xxx"错误。在使用import语句导入模块时,需要注意指定模块的正确名称和位置,并且需要在指定名称之前去掉任何路径或文件扩展名等。 4. 确认Python版本是否兼容。有时,Python库或模块可能只支持特定版本的Python解释器。如果我们的Python版本过低或过高,可能会导致导入失败。解决此问题可以升级或降级Python版本。 总之,如果出现了"No module named xxx"错误,可以先检查系统环境变量和Python路径是否设置正确,然后检查模块是否已经安装,最后检查代码中是否存在拼写错误或使用错误的模块名称。如果仍然存在问题,可以考虑使用第三方工具来帮助在Python解释器中调试和修复模块 import 问题。 ### 回答3: "No module named xxx"(没有名为xxx的模块)是一种Python中常见的错误提示。它意味着Python解释器无法找到所需的模块或库文件。出现这种错误提示可能有以下几种原因: 1. 模块名拼写错误:当Python解释器发现模块名称不符合命名规范或拼写错误时,就会出现没有模块名为xxx的提示。这种情况下,我们应该仔细检查模块名称是否正确拼写或是否符合命名规范。 2. 模块没有安装:如果Python解释器无法找到需要的模块,可能是因为该模块没有安装。在这种情况下,我们需要使用pip命令或其他软件包管理工具来安装该模块。 3. 模块缺少依赖项:有些模块需要依赖其他的模块才能正常运行,如果这些依赖项没有被正确安装,就会出现"No module named xxx"的提示。在这种情况下,我们需要安装相关的依赖项才能解决问题。 4. 导入路径错误:Python解释器会按照特定的导入路径来查找模块。如果导入路径错误,就会出现"No module named xxx"的错误提示。在这种情况下,我们需要检查导入路径是否正确,并确保模块所在的路径已经添加到系统路径中。 5. Python版本不兼容:Python 2.x和Python 3.x之间有许多语法和功能上的差异。如果模块是用Python 3.x编写的,但我们使用的是Python 2.x版本的解释器,就会出现"No module named xxx"的错误提示。在这种情况下,我们需要使用相应版本的Python解释器才能正确地导入模块。 总之,如果出现"No module named xxx"的错误提示,我们需要认真排查以上几个方面,并一个个试探性地解决问题,以确保程序正常运行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值