无法在 Pycharm 中导入手动安装的库

Can't import manually installed library in Pycharm

我正在编写一个 python 脚本,它将 运行 在 AWS 中作为 lambda 函数。由于它需要连接到 Postgres 数据库,因此需要库 psycopg2。似乎标准 psycopg2 不适用于 AWS lambda。我是从 this git repo 下载的。

我对所有依赖项都使用 virtualenv,因此我将下载包中的 psycopg2-3.6 文件夹复制到 [myproject]/env/Lib/site-packages。在我的主脚本中导入了这个库

import psycopg2

但是当我 运行 它在 PyCharm 时,我得到了错误:

  File "C:\Users\dxx0111\WorkSpace\iq-iot-lambda\app.py", line 2, in <module>
    import psycopg2
  File "C:\Users\dxx0111\WorkSpace\iq-iot-lambda\env\lib\site-packages\psycopg2\__init__.py", line 50, in <module>
    from psycopg2._psycopg import (                     # noqa
ModuleNotFoundError: No module named 'psycopg2._psycopg'

根据错误消息,它似乎能够在虚拟环境包文件夹下找到 psycopg2 的目录。它只是找不到 psycopg2._psycopg。我在这里错过了什么?

事实证明,从 link 下载的 psycopg2 库只能在 Amazon Linux 上运行,因为这是编译包的地方。它在我的 Windows 机器上不起作用。为了让它在本地工作,我必须使用 pip install psycopg2 安装到我的虚拟环境中。但是,当我部署到 AWS Lambda 时,我会使用下载的库进行压缩。在不同的平台上如此不同psycopg2。现在它在两个地方都有效。