我正在从 blob_list 获取输出“file_list”
blob_list = container_client.list_blobs()
for blob in blob_listL
file_list = f"Name: {blob.name},"
现在,当我打印 file_list 时,我的输出低于输出。
file_list = [
"Name: a/abc/log1.parquet",
"Name: c/abc/employee/log1.parquet",
"Name: d/abc/employee/log1.parquet",
"Name: g/abc/log1.parquet"
]
之后我想迭代到某个目录路径中的文件列表
files_in_d_employee = []
for file_path in file_list:
if 'd/abc/employee' in file_path:
files_in_d_employee.append(file_path)
print(files_in_d_employee)
我的输出低于,
['N']
['N', 'a']
['N', 'a', 'm']
['N', 'a', 'm', 'e']
['N', 'a', 'm', 'e', ':']
['N', 'a', 'm', 'e', ':', 'd']
['N', 'a', 'm', 'e', ':', 'd', '/']
['N', 'a', 'm', 'e', ':', 'd', '/', 'a']
['N', 'a', 'm', 'e', ':', 'd', '/', 'a', 'b']
所需输出:
Name: d/abc/employee/log1.parquet
名称:d/abc/employee/log1.parquet
要通过迭代 Python 变量中的 blob 列表来获得所需的输出,可以使用以下代码:
代码:
from azure.storage.blob import BlobServiceClient
client = BlobServiceClient.from_connection_string("xxxxx")
container_client = client.get_container_client("sample")
blob_list = container_client.list_blobs()
files_in_d_employee = []
for blob in blob_list:
file_path = blob.name
file_list = f"Name: {file_path}"
print(file_list)
if 'd/abc/employee' in file_path:
files_in_d_employee.append(file_path)
print(files_in_d_employee)
上面的代码检索名为
sample
的容器中的 blob 列表。然后它会迭代 blob 列表并打印每个文件的名称。如果文件路径包含 d/abc/employee
,则会将该文件路径添加到名为 files_in_d_employee
的列表中。最后,它打印包含 d/abc/employee
. 的文件路径列表
输出:
Name: a/abc/05-03-2024.html
Name: c/abc/employee/temp.png
Name: d/abc/employee/mountainview.png
Name: g/abc/bike.png
['d/abc/employee/mountainview.png']