Нет модуля с именем «psycopg2._psycopg» - PullRequest
1 голос
/ 06 мая 2019

Я создаю лямбда-функцию для подключения к экземпляру RDS Postgresql, используя библиотеку psycopg2. Когда я попробовал на своем локальном рабочем столе, он работает нормально, но когда я загружаю код в лямбда-версию AWS и проверяю его, он выдает ошибку:

Невозможно импортировать модуль 'lambda_function': нет модуля с именем 'psycopg2._psycopg'

Я попытался установить программу psycopg2 в локальную папку на моем компьютере, где я сохранил локальную копию функции lambda_function, а затем создал из нее zip-файл и загрузил его. Но все равно его не работает. Всем, кто сталкивался с подобной проблемой, пожалуйста, сообщите.

Я установил python 3.7 (32-разрядную версию) на свой локальный компьютер. Не уверен, является ли версия Python AWS 64-битной или нет.

1 Ответ

1 голос
/ 07 мая 2019

Я выяснил, почему это не работает.Мой локальный экземпляр Python - 3.7, поэтому, очевидно, он будет выполнять код, разработанный с использованием 3.6.И библиотека сборки psycopg2, которую я получил от jkehler / awslambda-psycopg2 , была создана для python 3.6, и пока я загружал свой код в AWS lambda, я выбирал Python 3.7 в качестве среды выполнения.Когда я меняю время выполнения на 3.6, код работал без проблем.Итак, закрытие вопроса

...