Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

273
Visualizações
¿Cómo eliminar un directorio? ¿Se usan os.removedirs y os.rmdir solo para eliminar directorios vacíos?

Cada vez que trato de usarlos para eliminar directorios con cosas en ellos, aparece este mensaje de error

 import os os.chdir('/Users/mustafa/Desktop') os.makedirs('new-file/sub-file') os.removedirs('new-file')

"/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", línea 170, en removeirs rmdir(name) OSError: [Errno 66] Directorio no vacío: 'nuevo archivo'

Sin embargo, creo que vi a personas que usaban esos comandos para eliminar directorios que no estaban vacíos, entonces, ¿qué estoy haciendo mal? Gracias

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Debería usar shutil.rmtree para eliminar el directorio de forma recursiva:

 import shutil shutil.rmtree('/path/to/your/dir/')

Respuesta a tu pregunta:

¿Se os.removedirs y os.rmdir solo para eliminar directorios vacíos?

Sí, solo se pueden usar para eliminar directorios vacíos.


A continuación se muestra la descripción del documento oficial de Python que lo establece claramente.

os.rmdir(path, *, dir_fd=None)

Eliminar (eliminar) la ruta del directorio. Solo funciona cuando el directorio está vacío ; de lo contrario, se genera OSError. Para eliminar árboles de directorios completos, se puede usar shutil.rmtree().

os.removedirs(name)

Eliminar directorios recursivamente. Funciona como rmdir() excepto que, si el directorio hoja se elimina con éxito, removers() intenta eliminar sucesivamente todos los directorios principales mencionados en la ruta hasta que se genera un error (que se ignora, porque generalmente significa que un directorio principal no está vacío ). Por ejemplo, os.removedirs('foo/bar/baz') primero eliminará el directorio 'foo/bar/baz' y luego eliminará 'foo/bar' y 'foo' si están vacíos . Genera OSError si el directorio hoja no se pudo eliminar con éxito.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda