我正在尝试使用python删除目录,但我不想在过程中递归删除整个目录路径:即
/家庭/目录/ DIR / dirtoberemoved
所以我不想删除更高级别的任何目录及其所有内容。我一直在研究stackoverflow来研究这个问题,大多数答案包括使用我不熟悉的shutil模块,查看模块的python文档,它说“删除整个目录树”
如果我这样做:
if os.path.exists("/home/dir/dir/dirtoberemoved");
shutil.rmtree("/home/dir/dir/dirtoberemoved");
或
shutil.rmtree("/dirtoberemoved");
是否会删除整个路径?如果是这样有什么好办法只删除python中的一个非空目录而不删除更高级别的目录?
答案 0 :(得分:4)
您需要指定要删除的目录的到的整个路径。只删除路径的最后部分,/home/dir/dir/
部分将不受影响。
删除是指命名路径中包含 的任何子目录,因此如果有/home/dir/dir/dirtoberemoved/foo
子目录,它将与其父目录一起删除。