Dans Python 3, TemporaryDirectory
de la tempfile
peut être utilisé.
A partir de la ejemplos :
import tempfile
with tempfile.TemporaryDirectory() as tmpdirname:
print('created temporary directory', tmpdirname)
# directory and contents have been removed
Pour contrôler manuellement le moment où le répertoire est supprimé, n'utilisez pas de gestionnaire de contexte, comme dans l'exemple suivant :
import tempfile
temp_dir = tempfile.TemporaryDirectory()
print(temp_dir.name)
# use temp_dir, and when done:
temp_dir.cleanup()
La documentation indique également :
À la fin du contexte ou de la destruction de l'objet répertoire temporaire, le répertoire temporaire nouvellement créé et tout son contenu sont supprimés du système de fichiers.
A la fin du programme, par exemple, Python nettoiera le répertoire s'il n'a pas été supprimé, par exemple par le gestionnaire de contexte ou la commande cleanup()
méthode. La méthode unittest
peut se plaindre ResourceWarning: Implicitly cleaning up <TemporaryDirectory...
si vous comptez sur cela.