【问题标题】:No module named 'pyodbc' in SpyderSpyder 中没有名为“pyodbc”的模块
【发布时间】:2021-04-20 17:28:26
【问题描述】:

我正在尝试使用 SQL 连接设置脚本,但遇到以下错误:

ModuleNotFoundError: No module named 'pyodbc'

从行:

import pyodbc

我使用的是 Python 3.9.2,Spyder 版本 4.2.3。更新到最新的 Spyder 版本 5.0.1,没有变化。

奇怪的是,我从命令行导入模块没有问题,只有当我通过 Spyder 运行它时才会遇到这个问题。

通常,根据我的阅读,这将是多个环境的情况,但我还没有设置任何环境,所以我只有一个 python 安装。

我也将site-packages 文件夹正确添加到路径中,哎呀,我已将pyodbc 文件移动到它们自己的目录中并将其添加到路径中。

我也将文件复制并粘贴到了 Spyder 的包目录中,但仍然没有解决问题。

我唯一能想到的是:

这表明 Spyder 使用 Python 3.7.9 作为其解释器,而不是我实际安装的版本?

知道可能是什么问题吗?

【问题讨论】:

    标签: python spyder


    【解决方案1】:

    感谢 Ewran 的帮助。

    当我更改解释器时,它给了我一条错误消息来更新我的 spyder 内核,这似乎已经解决了这个问题。

    为他人总结:

    1)。确保您有 C:\Users\AppData\Local\Programs\Python\Python39\Lib\site-packages

    的路径

    2)。确保将模块安装到正确的环境

    3)。确保 Spyder 使用正确的解释器,将其指向所需的 python.exe 并在需要时更新 Spyder 的内核。

    【讨论】:

      【解决方案2】:

      如果你对 Spyder 使用的 Python 3.7.9 没问题,你可以输入 !pip install pyodbc 直接在Spyder的控制台安装pyodbc

      然后,导入应该可以工作了。

      【讨论】:

      • 它很高兴地接受了命令,并以命令行可用的形式正确安装了它,尽管问题仍然存在。当我将文件放入包文件夹时,它说满足要求,但是在删除它们后它没有获取这些包,尽管它确实安装了 pyodbc 正常。在这一点上,我很想不在 spyder 中运行程序。
      • 您可以尝试在 Spyder 中更改您的 Python 解释器(例如下面这个 link),以指向您成功使用 pyodbc 的 Python 3.9.2。
      • Spyder 试图解释它的方式与我实际安装的 python 是否可能不匹配?当我尝试将解释器更改为指向我的实际 python.exe 时,它​​不喜欢它。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-04
      • 1970-01-01
      • 2022-07-20
      • 2018-08-27
      • 2021-06-23
      相关资源
      最近更新 更多