如何使用 Pyside2 删除整个目录?

how to delete an entire directory with Pyside2?

我有一个 QFileSystemModel,可以使用 QFileSystemModel.rmdir(index).

删除空目录

有没有办法用 Pyside2 删除非空目录?

我可以shutil.rmtree()删除非空目录,但是由于我用的是Qt,所以我倾向于使用Qt的方式。如果它存在。

我的解决方案在 QFileSystemModel 之外。采用 QDir.removeRecursively()

def del_folder(self, checked, index):
    if not index.isValid():
        return

    model = index.model()
    path = model.fileInfo(index).absoluteFilePath()
    dir1 = QtCore.QDir(path)
    dir1.removeRecursively() # remove all.