我只想提取 Aws s3 存储桶名称并以列表的形式显示
Posted
技术标签:
【中文标题】我只想提取 Aws s3 存储桶名称并以列表的形式显示【英文标题】:I want to extract only the Aws s3 bucket name and display it in the form of list 【发布时间】:2022-01-09 16:35:38 【问题描述】:您好,我正在使用 boto & boto3 库来读取 AWS s3 存储桶的名称。通过使用以下代码,我成功地使用我的访问密钥和秘密访问密钥访问了 aws s3 存储桶。
import boto
from boto.s3.key import Key
import boto.s3.connection
from __future__ import print_function
ACCESS_KEY_ID ='****'
SECRET_ACCESS_KEY ='****'
conn = boto.s3.connect_to_region('us-**',
aws_access_key_id=ACCESS_KEY_ID, aws_secret_access_key=SECRET_ACCESS_KEY)
ls =
ls = conn.get_all_buckets()
print(ls)
它成功地将我帐户中的存储桶列表返回为
Out[39]: [<Bucket: aaaa>, <Bucket: bbbb>]
但是,我只想要如下列表中的存储桶名称
[aaaa,bbbb]
我怎样才能做到这一点?有什么方法可以根据列表获取存储桶名称?
【问题讨论】:
【参考方案1】:您当前正在返回Bucket
对象的列表。您只需要访问每个对象的 name
字段并构造名称列表。
试试这个:
conn = boto.s3.connect_to_region('us-**',
aws_access_key_id=ACCESS_KEY_ID, aws_secret_access_key=SECRET_ACCESS_KEY)
ls = list(map(lambda bucket: bucket.name, conn.get_all_buckets()))
print(ls)
【讨论】:
以上是关于我只想提取 Aws s3 存储桶名称并以列表的形式显示的主要内容,如果未能解决你的问题,请参考以下文章