AWS如何知道我的导入位置?

时间:2016-12-05 19:33:09

标签: python amazon-web-services aws-lambda

我是AWS Lambda的新手,也是Python的新手。

我想编写一个使用AWS API的python lambda。

boto是最受欢迎的python模块,因此我希望将其包含在内。

在线查看示例我将import boto3放在我的Lambda顶部并且它刚刚工作 - 我能够在我的Lambda中使用boto。

AWS如何了解boto?这是一个社区模块。是否有Lambdas支持的模块列表? AWS是否缓存自己的社区模块副本?

3 个答案:

答案 0 :(得分:3)

The documentation似乎建议在AWS Lambda上默认提供boto3

  

AWS Lambda包含AWS SDK for Python(Boto 3),因此您无需将其包含在部署包中。但是,如果要使用默认情况下包含的Boto3版本,则可以将其包含在部署包中。

据我所知,您需要在部署包中手动安装任何其他依赖项,如链接文档中所示,使用:

pip install foobar -t <project path>

答案 1 :(得分:3)

AWS Lambda的Python环境预先安装了boto3。您想要的任何其他库都需要成为您上传的zip的一部分。您可以使用pip install whatever -t mysrcfolder在本地安装它们。

答案 2 :(得分:1)

AWS Lambda包含适用于Python的AWS开发工具包(Boto 3),因此您无需将其包含在部署包中。

此链接将为您提供有关Lambda环境的更多深入信息 https://aws.amazon.com/blogs/compute/container-reuse-in-lambda/

这也是 https://alestic.com/2014/12/aws-lambda-persistence/