PermissionError: [WinError 5] Accesso negato

Ogni volta che si tenta di eliminare un file utilizzando os.remove() in Python 3.5.1, ottengo questo messaggio di PermissionError: [WinError 5] Access is denied

E qui è che il codice è semplice:

def clean_thrash(path):
    dirlist=get_dirlist(path)
    for f in dirlist:
        fullname=os.path.join(path,f)
        if fullname == os.path.join(path,"thrash.txt"):
            os.remove(path)
        if os.path.isdir(fullname):
            clean_thrash(fullname)

Non addirittura di cancellare un singolo file, della directory o sottodirectory.

InformationsquelleAutor Saraghu Ravi | 2016-05-22



2 Replies
  1. 1

    Devi essere utente amministratore se hai Windows o avere sudo autorizzazioni, se siete su Linux.
    provare a eseguire il codice con sudo

    vedere questa risposta https://stackoverflow.com/a/32199615/6356497

    • Grazie per la risposta..+Revaz
    • Ho risolto sostituendo il sistema operativo.rimuovere(percorso) del sistema operativo.rimuovere(fullname)
    • ah, ovvio 🙂 …………………….
  2. 1

    Se si utilizza windows, è possibile semplicemente fare:

    import shutil
    shutil.rmtree(directory_path)

    Spero che questo funziona!

Lascia un commento