gpt4 book ai didi

amazon-web-services - 在 AWS S3 中选择随机对象

转载 作者:行者123 更新时间:2023-12-02 03:45:37 32 4
gpt4 key购买 nike

我有一个包含大约 10,000 个图像对象的 AWS S3 存储桶。我想使用 boto3 随机获取一个对象。 list_objects_v2() 一次仅列出 1,000 个对象,但允许您分页。我的问题是我目前正在考虑的方法是否是最好的方法。我打算对每个对象列表进行分页,将每个页面中的所有键保存到一个列表中。在没有更多页面剩余后,从列表中随机选择一个键。

最佳答案

如果您知道对象键(文件名),那么这个问题就很容易解决。即使您不知道前面的文件名,也可以通过 list_objects_v2() 分页来构建对象列表。

保留一个文件名列表,将其打乱并一个一个弹出。

import random

mykeys = [objj1, obj2, ....] # or build this list by paginating
random.shuffle(mykeys)
while mykeys:
random_key = mykeys.pop()
print random_key

另一种选择是使用 random.choice

import random

mykeys = [objj1, obj2, ....] # or build this list by paginating
while mykeys:
random_key = random.choice(mykeys)
mykeys.remove(random_key)
print random_key

关于amazon-web-services - 在 AWS S3 中选择随机对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46880663/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com