【发布时间】:2020-05-19 23:47:17
【问题描述】:
我正在尝试在 lambda AWS 上导入 numpy 库,步骤如下:
layer=numpy
mkdir -p $layer/python/lib/python3.7/site-packages/
cd $layer/python/lib/python3.7/site-packages/
pip install -t . numpy
cd ../../../../
zip -r $layer.zip .
这里是来自 lambda 的错误:
[错误] Runtime.ImportModuleError: 无法导入模块 'lambda_function':
重要提示:请阅读本文以获取有关如何解决此问题的建议!
导入 numpy c 扩展失败。 - 尝试卸载并重新安装 numpy。 - 如果您已经这样做了,那么: 1. 检查您是否希望使用“/var/lang/bin/python3.7”中的 Python3.7, 并且您的 PATH 或 PYTHONPATH 中没有目录可以 干扰您尝试使用的 Python 和 numpy 版本“1.17.3”。 2. 如果 (1) 看起来不错,您可以在以下位置打开一个新问题 https://github.com/numpy/numpy/issues。请包括以下详细信息: - 你是如何安装 Python 的 - 你如何安装 numpy - 您的操作系统 - 无论您是否安装了多个 Python 版本 - 如果您从源代码构建,您的编译器版本和理想的构建日志
- 如果您使用的是 numpy git 存储库,请尝试
git clean -xdf(删除所有不受版本控制的文件)并重建 numpy。注意:这个错误有很多可能的原因,所以请不要评论 一个关于此的现有问题 - 改为打开一个新问题。
原始错误是:没有名为“numpy.core._multiarray_umath”的模块
这是我的路径结构:
.
└── python
└── lib
└── python3.7
└── site-packages
谢谢
解决方案:
docker pull python:3.7-slim-buster
docker run -it python:3.7-slim-buster bash
cd home
layer=boto3_cv2_pil
mkdir -p $layer/python/lib/python3.7/site-packages/
cd $layer/python/lib/python3.7/site-packages/
pip install -t . boto3 opencv-python Pillow numpy==1.17.3 pytz
cd ../../../../
apt-get update
apt-get install zip -y
zip -r $layer.zip .
docker cp $CONTAINER_ID:/home/boto3_cv2_pil.zip .
【问题讨论】:
标签: python amazon-web-services numpy