我下载并安装了最新的 Python (3.7),并通过标准的“pip install pyodbc”方法以及下载和安装非官方包装器安装了 pyodbc。但是,在我使用 pyodbc 的脚本中,PyCharm 用红色在 pyodbc 下划线,当我将鼠标悬停在它上面时,它告诉我“找不到模块”。在我的设置 |项目解释器屏幕,它显示 pyodbc 已安装,当我运行我的脚本时,它可以工作。

我的问题是,当我输入函数名和左括号时,它不会向我显示函数参数,就像它知道的模块一样。我想摆脱错误标记并获得 PyCharm 对 pyodbc 的全面支持的好处。我怎么做?

注意:这与我一年半前发布的问题的副本非常接近,但当时我没有得到有帮助的答案。该线程上的一位评论者建议我卸载 pyodbc,然后运行 ​​python -m install pyodbc。我这样做了,没有任何变化。

最佳答案

更新: 以下答案基于 PyCharm 2018.1 的测试。 PyCharm 2018.2.1 包含一个更新的“packaging_tool.py”,可以很好地与 pip 10+ 配合使用。

TL;DR:更新你的 PyCharm。

我能够使用 pip 18.0 重现您的问题。当 PyCharm 从 File > Settings > Project Interpreter 安装一个包时,它会调用一个名为“packaging_tool.py”的辅助脚本,该脚本与 pip 版本 10 及更高版本不兼容,因此尝试从那里安装任何包将导致



JetBrains 必须修复该脚本才能完全解决问题。 (他们目前的解决方法似乎是在 9.x 版中固定 pip。即使项目解释器窗口将 pip 18.0 列为“最新”,如果我们选择 pip 并单击升级(向上箭头)按钮,它也不会升级到它。)

同时,pip_10+ 的解决方法是

  • 在 PyCharm (AltF12) 中打开一个终端窗口,
  • 运行 pip install pyodbc ,
  • 关闭终端窗口并打开 File > Settings > Project Interpreter ,
  • 尝试安装其他一些包,比如 pandas(安装会因为同样的原因失败),
  • 关闭“可用包”对话框,然后
  • 单击“确定”按钮关闭“设置”对话框。

  • 这应该会触发 PyCharm 重新扫描已安装的软件包并在 PyCharm 编辑器中启用 pyodbc 代码完成。 (您可能需要重新启动 PyCharm 才能使更改生效。)

    关于python - 为什么PyCharm 运行时告诉我找不到pyodbc 模块?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51897338/

    10-11 15:23
    查看更多