【问题标题】:Numpy imported, but no functions found in AWS lambda function已导入 Numpy,但在 AWS lambda 函数中未找到函数
【发布时间】:2017-08-31 14:59:09
【问题描述】:

我正在开发一个部分依赖于 numpy 的 lambda 函数。我使用导入 numpy 的测试脚本创建了一个部署包 zip,然后尝试使用 np.subtract 减去两个数字,因为它无法找到 numpy 函数。

import numpy as np 
a = np.subtract(4,2)
print(a)

我正在 Linux EC2 实例上使用 python3.5 virtualenv。为了创建部署 zip,我安装了 numpy,将我的脚本放入 site-packages 并按照here 的描述压缩文件夹的内容。我可以毫无问题地从 zip 文件创建 lambda 函数,但是当我触发它时,它会给出错误:

module initialization error: module 'numpy' has no attribute 'subtract'

似乎导入了numpy,但找不到任何功能。我假设我错误地打包了库/脚本,但我认为我正确地遵循了指示。任何帮助,将不胜感激!

【问题讨论】:

    标签: python numpy aws-lambda


    【解决方案1】:

    我认为您需要在导入模块时引用它。一点代码总是有帮助的。

    import numpy
    
    a=2
    b=1
    c=numpy.subtract(a,b)
    print c
    

    【讨论】:

    • 如果我不将其引用为 np 可能会更好,但是否像您那样直接引用它?编辑了主要问题以包含测试代码。
    • 这个包可能需要解压才能访问numpy?它是否在本地工作,而不是在 EC2 上?
    【解决方案2】:

    为了将来参考,here 提出了类似的问题,我能够根据自己的需要调整解决方案。我就是这样打包库的。

    【讨论】:

      猜你喜欢
      • 2018-04-25
      • 2018-09-06
      • 2022-06-22
      • 2021-10-21
      • 2017-09-16
      • 2019-12-11
      • 2016-04-26
      • 2017-08-24
      • 1970-01-01
      相关资源
      最近更新 更多