无法导入模块'lambda_function':无法从'ctypes'(/var/lang/lib/python/3.7/ctypes/__init__.py中导入名称'WinDLL'

时间:2019-12-13 21:14:48

标签: python python-3.x matplotlib aws-lambda

我正在尝试在python lambda函数中使用matplotlib生成图形。我使用mathplotlib库导入了一个图层,但是它不起作用。 想法是生成图形,将其保存为临时文件,然后上传到S3。

运行代码时,输​​出为:

Response:
{
  "errorMessage": "Unable to import module 'lambda_function': cannot import name 'WinDLL' from 'ctypes' (/var/lang/lib/python3.7/ctypes/__init__.py)",
  "errorType": "Runtime.ImportModuleError"
}

帮助!

我需要安装另一个图书馆吗?我看到这是numpy库的问题,但我不知道。

存在另一个库来生成图形吗?

1 个答案:

答案 0 :(得分:2)

我假定您使用Windows操作系统打包了python库(通过virtualenv),并将它们作为zip文件上传到AWS-Lambda的create function部分。

AWS是基于Linux的,因此不兼容可能源于您将库打包在Windows上的事实。

基本上,您需要在linux机器中进行包装。也许使用了免费版本的ec2-linux。而且,matplotlib库有其自身的兼容性问题,因此无法真正保证这种方法会起作用。

希望这对您有帮助