无法导入模块'lambda_function':没有名为'flatten_json'的模块

Unable to import module #39;lambda_function#39;: No module named #39;flatten_json#39;(无法导入模块#39;lambda_function#39;:没有名为#39;flatten_json#39;的模块)

本文介绍了无法导入模块'lambda_function':没有名为'flatten_json'的模块的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

运行lambda代码时出现以下错误,我使用的是名为

的库
from flatten_json import flatten

我尝试寻找lambda层,但在网上找不到,请告诉我以前是否有人使用过此层或建议其他选择

推荐答案

有两个选项可供选择

选项1)您可以使用部署包将函数代码部署到Lambda

  • 部署包(例如zip)将包含您的函数代码和用于运行函数代码的任何依赖项。
  • 因此,您可以将flatten_json作为代码打包到Lambda。
  • 查看AWS文档中的Creating a function with runtime dependencies页,它解释了拥有请求库的使用情形。在您的方案中,库应该是flatten_json

选项2)创建具有所需库依赖项的层,在您的情况下只需flatten_json。然后将该层附加到您的Lambda。

  • 查看AWS提供的creating and sharing lambda layers指南。

如何在%1)和%2)之间做出决定?

  • 如果您只需要该Lambda中的依赖项,请使用选项1)。无需创建额外的创建层步骤。
  • 如果您有一些想要跨不同lambda共享的公共代码,那么层很有用。因此,如果您还需要在其他lambda中访问该库,那么最好有一个可以附加到不同lambda的层[选项2)]。

这篇关于无法导入模块'lambda_function':没有名为'flatten_json'的模块的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:无法导入模块'lambda_function':没有名为'flatten_json'的模块

基础教程推荐