【问题标题】:How to save a Python Dictionary as a Pickle object on AWS S3如何在 AWS S3 上将 Python 字典保存为 Pickle 对象
【发布时间】:2019-08-19 09:21:00
【问题描述】:

我有一本 python 字典。我想将它保存为 AWS S3 中的泡菜对象。

我正在尝试这个 -

import boto3
import pickle


#Connect to S3 default profile
s3 = boto3.client('s3')

serializedMyData = pickle.dumps(myDictionary)

s3.put_object(Bucket='mytestbucket',Key='myDictionary')

脚本成功运行,我在 S3 中获得了一个名为 * myDictionary* 的文件。但它不是泡菜,它有 0 个字节。

我稍微修改了我的代码 -

import boto3
import pickle


#Connect to S3 default profile
s3 = boto3.client('s3')

serializedMyData = pickle.dumps(myDictionary)

s3.put_object(Bucket='mytestbucket',Key='myDictionary').put(Body=serializedMyData)

然后我得到这个错误 -

AttributeError: 'dict' object has no attribute 'put'

我该怎么办?

【问题讨论】:

    标签: python amazon-web-services dictionary amazon-s3 pickle


    【解决方案1】:

    试试s3.put_object(Bucket='mytestbucket',Key='myDictionary', Body=serializedMyData)

    https://docs.aws.amazon.com/code-samples/latest/catalog/python-s3-put_object.py.html

    【讨论】:

    • 当我添加 serializedMyData 时出现错误 - TypeError: put_object() 只接受关键字参数。
    • 固定答案,不知道为什么我对此的评论消失了
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-28
    • 2019-12-29
    • 2011-06-21
    • 2016-03-18
    相关资源
    最近更新 更多