es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo copiar todas las imágenes PNG de una carpeta a otra, si contiene un archivo ZIP, que se copie en la nueva carpeta.

Estoy haciendo scripting en imágenes y en una carpeta ZIP donde estoy copiando imágenes de una carpeta y haciendo una nueva carpeta y copiando esas imágenes.

Pero hay una cosa más aquí, si el archivo es una carpeta ZIP, entonces copiaré esa carpeta ZIP a un nuevo directorio y la copiaré a ese directorio.

¿Cómo es posible para una carpeta ZIP?

Mi código para imágenes es:

import glob
import shutil
import os

src_dir = "tu/directorio/fuente"
dst_dir = "tu/directorio/destino"
for jpgfile in glob.iglob(os.path.join(src_dir, "*.jpg")):
    shutil.copy(jpgfile, dst_dir)
Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para copiar una carpeta zip utilizando Python, se puede usar la función “copy2()” de la librería shutil para copiar la carpeta zip al nuevo directorio. A continuación, se presenta un fragmento de código actualizado que incluye esta funcionalidad:

    import glob
    import shutil
    import os
    
    src_dir = "tu/directorio/de/origen"
    dst_dir = "tu/directorio/de/destino"
    
    # Iterar a través de todos los archivos en el directorio de origen
    for file in os.listdir(src_dir):
        src_file = os.path.join(src_dir, file)
        # Verificar si el archivo es una carpeta zip
        if file.endswith(".zip"):
            # Copiar la carpeta zip al directorio de destino
            dst_file = os.path.join(dst_dir, file)
            shutil.copy2(src_file, dst_file)
        # Si el archivo no es una carpeta zip, se asume que es una imagen y se copia
        elif file.endswith(".jpg"):
            dst_file = os.path.join(dst_dir, file)
            shutil.copy(src_file, dst_file)
    

    Este código primero verifica si cada archivo en el directorio de origen es una carpeta zip o una imagen. Si es una carpeta zip, utiliza “shutil.copy2()” para copiar la carpeta (con todos sus contenidos) al directorio de destino. Si es una imagen, utiliza “shutil.copy()” para copiar el archivo al directorio de destino.

Comments are closed.