使用 boto.S3,获取 BucketListResultSet 总长度的最佳方法是什么?我真的需要遍历所有这些吗?
from boto.s3.connection import S3Connection
conn = S3Connection('XXX', 'YYYY')
bucket = conn.get_bucket('myBucket')
l = bucket.list('just/a/prefix/')
这里,l
是 BucketListResultSet 。如何获取l
中的对象总数?
最佳答案
BucketListResultSet
是一个生成器,可以在幕后为您处理任何分页。因此,获得它的“长度”的唯一方法是实际迭代所有结果。一种简单的方法是在示例中使用 list(l)
。请注意,这将是一项昂贵的操作,因为它涉及到 S3 服务的至少一次(也可能多次)往返。
关于amazon-s3 - 如何获取 BucketListResultSet 的长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24788160/