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)