1
我有一個dicts列表(例如[{'a': 'b', 'c': 'd'}, {'e': 'f', 'g': 'h'}]
),我想使用Python boto包將它存儲在s3中。使用Python存儲s3中的文件boto
一種方法是遍歷列表,寫入文件對象f
,使得f
的每一行都是json對象。然後我可以使用key.set_contents_from_file(f)
。是正確的/最好的方式來做到這一點?
看來寫入本地文件是不必要的中間步驟,但我不確定。
嗯,但這需要一個字符串'str'而不是一個列表(非字符串列表),我不知道我怎麼可以一次寫這麼一行。有什麼想法嗎? (我想一次讀一行,這樣從s3讀取文件的內容就可以一次完成一行,而不必加載整個文件)。 – tscizzle 2015-01-26 20:12:23
除非你期望你的json文件很大,這聽起來有點像不必要的優化。你可以'json.dumps(your_dict)'將其轉換爲JSON,然後將整個JSON轉換爲S3?然後,任何獲得JSON的客戶都可以將其解析爲JSON。如果你真的想要流JSON對象的JSON對象,那麼你可以使用「流JSON解析器」。 – mauzel 2015-01-26 20:17:06
好點,但我確實希望json文件很龐大,而且實際上爲了不超過我們託管的託管機器的內存限制,必須將數據集合起來。那麼這個「流式JSON解析器」怎麼樣? – tscizzle 2015-01-26 20:20:28