我有一个项目正在使用pathlib
,我想做相当于shutil.rmtree
的操作。
我考虑使用以下方式实现:
def pathlib_rmtree(folder):
if folder.exists():
for file in folder.glob('**/*'):
if file.is_dir():
file.rmdir()
else:
file.unlink()
folder.rmdir()
但我不确定 folder.glob('**/*')
是否有保证按顺序返回所有子文件夹为空后再调用 rmdir
。
所以问题有两个:
- 是否有更好的方法使用
pathlib
递归删除目录? glob
是否保证其结果的顺序,这样所有文件都在它们所属的子文件夹之前返回?