Python 空的';文件夹';未在地面军事系统中删除

Python 空的';文件夹';未在地面军事系统中删除,python,rest,google-cloud-storage,Python,Rest,Google Cloud Storage,当我通过控制台从存储桶中的“文件夹”中删除所有文件时,该文件夹也会消失,因为没有目录之类的东西-存储桶之后的整个路径是关键 但是,当我通过restapi以编程方式移动(copy和delete方法)这些文件时,文件夹仍然是空的。因此,我必须编写额外的逻辑来检查这些并明确删除它们 这不是RESTAPI处理中的一个bug吗?无论使用何种方法,我都希望有相同的行为。结果表明,如果不需要将所有以/结尾的对象清空,则可以安全地删除它们。“内容”不会被删除 如果您使用的是谷歌控制台,则必须先创建一个文件夹,然

当我通过
控制台
存储桶
中的“文件夹”中删除所有文件时,该文件夹也会消失,因为没有目录之类的东西-存储桶之后的整个路径是关键

但是,当我通过
restapi
以编程方式移动(
copy
delete
方法)这些文件时,文件夹仍然是空的。因此,我必须编写额外的逻辑来检查这些并明确删除它们


这不是RESTAPI处理中的一个bug吗?无论使用何种方法,我都希望有相同的行为。

结果表明,如果不需要将所有以
/
结尾的对象清空,则可以安全地删除它们。“内容”不会被删除

如果您使用的是
谷歌控制台
,则必须先创建一个文件夹,然后才能上载到该文件夹。因此,该文件夹是一个显式对象,即使是空的也会保留。使用
Cyberduck
等工具上传时,显然会出现相同的行为

但是,如果使用REST API及其完整路径(即
bucket/folder/file
)上载文件,则该文件夹在视觉上是隐式的,但不会这样创建。因此,当删除文件时,不会留下任何文件夹,因为它一开始就不存在


因为我的用例的预期行为是自动删除空文件夹,所以我有一个预处理例程,它删除所有以
/

结尾的blob。这个答案讨论了类似的问题@YogeshPatil感谢您的参考。做了进一步的测试并回答了我的问题。