我已连接到S3,并将所有文件保存在S3存储桶foo中,并且来自文件夹poo。
我所有的文件都在S3://foo/poo
中。
运行此代码将返回:
[i.key for i in s3_resource.Bucket(foo).objects.filter(Delimiter='/', Prefix='poo/')]
我得到:
['poo/',
'poo/a.png',
'poo/b.png',
'poo/c.png',
.....]
如何摆脱poo/
?
答案 0 :(得分:0)
使用rsplit,最大拆分等于1并取第二个值
[i.key.rsplit('/', 1)[1]
for i in s3_resource.Bucket(foo).objects.filter(Delimiter='/', Prefix='poo/')
if i.key.rsplit('/', 1)[1] != '']
应该给
['a.png', 'b.png', 'c.png', ...]
答案 1 :(得分:0)
[i.key for i in s3_resource.Bucket("foo").objects.filter(Delimiter='/', Prefix='poo/') if i.key != 'poo/']