Skip to main content
 首页 » 编程设计

python之谷歌云存储 Python list_blobs() 不打印对象列表

2025年05月04日16duanxz

我是 Python 和 Google Cloud Storage 新手。 我正在编写一个 python 脚本,以使用 Google Cloud Python 客户端库从 Google Cloud Storage 存储桶中获取文件列表,并且 Bucket 类中的 list_blobs() 函数没有按预期工作。

https://googlecloudplatform.github.io/google-cloud-python/stable/storage-buckets.html

这是我的python代码:

from google.cloud import storage 
from google.cloud.storage import Blob 
 
client = storage.Client.from_service_account_json(service_account_json_key_path, project_id) 
bucket = client.get_bucket(bucket_id) 
print(bucket.list_blobs()) 

如果我对文档的理解正确,print(bucket.list_blobs()) 应该打印如下内容:['testfile.txt', 'testfile2.txt']。

但是,我的脚本打印了这个: “0x7fdfdbcac590 处的 google.cloud.storage.bucket._BlobIterator 对象”

delete_blob() 文档中的示例代码与我的相同。 https://googlecloudplatform.github.io/google-cloud-python/stable/storage-buckets.html

我不确定我在这里做错了什么。 任何指针/示例/答案将不胜感激。谢谢!

请您参考如下方法:

列表函数示例:

def list_blobs(bucket_name): 
    """Lists all the blobs in the bucket.""" 
    storage_client = storage.Client() 
    bucket = storage_client.get_bucket(bucket_name) 
 
    blobs = bucket.list_blobs() 
 
    for blob in blobs: 
        print(blob.name)