Python3/cloud9/lambda - 使导入的模块可用于 lambda
Posted
技术标签:
【中文标题】Python3/cloud9/lambda - 使导入的模块可用于 lambda【英文标题】:Python3/cloud9/lambda - making imported modules available to lambda 【发布时间】:2018-05-24 11:10:36 【问题描述】:使用 sqlobject。当我导入模块时,在本地或远程运行 lambda 时出现无法加载模块错误。该模块已安装,如果我得到一个命令行 python3 解释器并导入它导入的模块就好了。
如何安装第 3 方模块,以便它们与 lambda local 和 lambda remote 一起使用?
代码再简单不过了:
import sqlobject
【问题讨论】:
【参考方案1】:回答我自己的问题... 这些是 Python 3 的说明。
首先从一个空的环境开始,我的称为循环。
创建一个新的 lambda 函数:
您的文件夹结构现在如下所示:
会有两个同名的文件夹(有点混乱 - 问 AWS 而不是我)。
右键单击带有您的 lambda 函数名称的最顶部文件夹,然后选择“在此处打开终端”。这会得到你的命令行。
无需使用 sudo,只需安装您需要的软件包即可。将您的软件包安装到该文件夹中:
python3 -m pip install --target=./sqlobject
重要 您需要将软件包安装在您打开终端的***文件夹中。请参阅 pip install 行的部分内容:
--target=./
确保软件包安装在 lambda 可以使用的正确文件夹中。如果您使用标准 pip 安装:
python3 -m pip install sqlobject
您的软件包将安装在错误的位置。
安装了新添加的包后,您的文件夹结构应如下所示:
您可以看到右侧的代码...安装了 sqlobject 包后运行良好。
【讨论】:
这是唯一的方法吗?你能用虚拟环境做吗?以上是关于Python3/cloud9/lambda - 使导入的模块可用于 lambda的主要内容,如果未能解决你的问题,请参考以下文章