ver varias una lista explorador existe directorio crear con carpetas carpeta archivos abrir python folder text-files overwrite

python - varias - ¿Cómo sobrescribir una carpeta si ya existe al crearla con makedirs?



python lista carpetas (5)

Sólo decir

dir = ''path_to_my_folder'' if not os.path.exists(dir): # if the directory does not exist os.makedirs(dir) # make the directory else: # the directory exists #removes all files in a folder for the_file in os.listdir(dir): file_path = os.path.join(dir, the_file) try: if os.path.isfile(file_path): os.unlink(file_path) # unlink (delete) the file except Exception, e: print e

El siguiente código me permite crear un directorio si aún no existe.

dir = ''path_to_my_folder'' if not os.path.exists(dir): os.makedirs(dir)

La carpeta será utilizada por un programa para escribir archivos de texto en esa carpeta. Pero quiero comenzar con una carpeta nueva y vacía la próxima vez que mi programa se abra.

¿Hay una manera de sobrescribir la carpeta (y crear una nueva, con el mismo nombre) si ya existe?


Se recomienda la comprobación os.path.exists(dir) pero se puede evitar utilizando ignore_errors

dir = ''path_to_my_folder'' shutil.rmtree(dir, ignore_errors=True) os.makedirs(dir)


Versión de EAFP (ver sobre esto aquí)

import errno import os from shutil import rmtree from uuid import uuid4 path = ''path_to_my_folder'' temp_path = os.path.dirname(path)+''/''+str(uuid4()) try: os.renames(path, temp_path) except OSError as exception: if exception.errno != errno.ENOENT: raise else: rmtree(temp_path) os.mkdir(path)


import shutil path = ''path_to_my_folder'' if not os.path.exists(path): os.makedirs(path) else: shutil.rmtree(path) #removes all the subdirectories! os.makedirs(path)

¿Qué hay sobre eso? ¡Echa un vistazo a la biblioteca de Python shutil !


dir = ''path_to_my_folder'' if os.path.exists(dir): shutil.rmtree(dir) os.makedirs(dir)