【问题标题】:I cannot delete an image in tmp folder when lamda function is triggered触发 lambda 函数时,我无法删除 tmp 文件夹中的图像
【发布时间】:2019-03-25 23:48:13
【问题描述】:

我正在使用 netwrokx 库生成一张图片,其中包含用户对我在 AWS lambda 中路径 /tmp/networkx.png 中的问题的回答,并邮寄用户的这张图片。 [networkx.png without any overlapping]

我在这里面临的问题是,在每次会话之后,图像不会在 tmp 文件夹中被删除,并且在下一个会话中图像会重叠。 [networkx.png with overlapping]

我已经尝试了以下 -

def delete_image():
    if os.path.exists("/tmp/networkx.png"):
       os.remove("/tmp/networkx.png")
       print("removed the image")
    else: 
       print("Image not removed")

谁能告诉我一旦图像被邮寄给用户后如何删除 tmp 文件夹中的图像。

【问题讨论】:

  • 在您的代码中,您实际上是在创建一个新图像以在每个会话上绘制吗?或者您使用的是以前使用过的旧图像对象。如果您执行后者,请确保在绘制到图像之前清除图像或重新创建图像。如果您使用相同的图像对象而不清除它,它将像您显示的那样重叠。
  • 或者你正在创建一个新图像,但是你没有清除应该绘制的节点列表
  • 非常感谢。我正在清除图形的节点而不是清除图像。

标签: python-3.x amazon-web-services aws-lambda alexa alexa-skills-kit


【解决方案1】:

对于遇到相同问题的任何人。

请使用以下方法清除您的图像:

    plt.clf()

然后保存你创建的图像:

    plt.savefig("/tmp/networkx.png")<br>

然后关闭图像窗口:

    plt.close("/tmp/networkx.png")<br>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多