Módulo Shutil en Python ayuda a automatizar el proceso de copiar y eliminar archivos y directorios. Viene bajo los módulos de utilidad estándar de Python.
El módulo Shutil (abreviatura de utilidad de shell) también proporciona muchas funciones de operaciones de alto nivel en archivos y colecciones de archivos.
¿Qué es el método Shutil.copyfile()?
El Shutil.copiararchivo() método en Pitón se utiliza para copiar el contenido del archivo de origen al archivo de destino. Los metadatos del archivo no se copian. El origen y el destino deben representar un archivo y el destino debe poder escribirse. Si el destino ya existe, se reemplazará con el archivo de origen; de lo contrario, se creará un archivo nuevo.
Si el origen y el destino representan el mismo archivo, entonces el Excepción SameFileError será levantado.
Shutil.copiararchivo() Sintaxis del método
Shutil.copyfile(origen, destino, *, follow_symlinks = Verdadero)
Parámetros:
- fuente : una cadena que representa la ruta del archivo fuente.
- destino : una cadena que representa la ruta del archivo de destino.
- seguir_enlaces simbólicos (opcional): el valor predeterminado de este parámetro es Verdadero. Si False y la fuente representan un enlace simbólico, se creará un nuevo enlace simbólico en lugar de copiar el archivo.
Nota: El '*' en la lista de parámetros indica que todos los parámetros siguientes (aquí en nuestro caso 'follow_symlinks') son parámetros de palabras clave únicamente y se pueden proporcionar usando su nombre, no como parámetros posicionales.
Devoluciones:
Este método devuelve una cadena que representa la ruta del archivo recién creado.
Cómo copiar un archivo usando el método Shutil.copyfile() en Python
Usando el métodoshutil.copyfile() puedes copiar fácilmente un archivo a un archivo nuevo. Para utilizar este método sólo necesita mencionar la ubicación del archivo de origen y la ubicación del archivo de destino.
Entendámoslo mejor con un ejemplo:
cadena en java
Uso del método Shutil.copyfile() para copiar un archivo desde el origen al destino
Aquí, en este ejemplo, veremos el uso deshutil.copyfile() sobre cómo copiar un archivo desde el origen al destino usando Python.
Python3
# Python program to explain shutil.copyfile() method> # importing os module> import> os> # importing shutil module> import> shutil> # path> path>=> '/home/User/Documents'> # List files and directories> # in '/home/User/Documents'> print>(>'Before copying file:'>)> print>(os.listdir(path))> # Source path> source>=> '/home/User/Documents/file.txt'> # Destination path> destination>=> '/home/User/Documents/file(copy).txt'> # Copy the content of> # source to destination> dest>=> shutil.copyfile(source, destination)> # List files and directories> # in '/home / User / Documents'> print>(>'After copying file:'>)> print>(os.listdir(path))> # Print path of newly> # created file> print>(>'Destination path:'>, dest)> |
>
>
Producción:
Before copying file: ['hrithik.webp'ltr'>Aquí vemos que se producen posibles errores al utilizar el métodoshutil.copyfile(). Si el origen y el destino representan el mismo archivo, se generará la excepción 'SameFileError'. Si el destino es un directorio, se generará la excepción 'IsADirectoryError'. Si no se puede escribir en el destino, se generará la excepción 'PermissionError' Python3 # Programa Python para explicar el cierre Método .copyfile() # importar módulo Shuil importar Shuil # Ruta de origen fuente = '/home/User/Documents/file.txt' # Ruta de destino destino = '/home/User/Documents/file.txt' # Copie el contenido de # origen al destinoshutil.copyfile(origen, destino) Salida: Rastreo (última llamada más reciente): Archivo 'copy.py', línea 31, enshutil.copyfile(origen, destino) Archivo ' /usr/lib/python3.6/shutil.py', línea 104, en el archivo de copia levanta SameFileError('{!r} y {!r} son el mismo archivo'.format(src, dst)) Shutil. SameFileError: '/home/User/Documents/file.txt' y '/home/User/Documents/file.txt' son el mismo archivo Ruta de destino: /home/User/Documents/file(copy). txt Manejo de errores Aquí estamos manejando errores al usar el métodoshutil.copyfile(). Python3 # Programa Python para explicar el método Shutil.copyfile() # Importación del módulo Shutil Import Shuil # Ruta de origen fuente = '/home/User/Documents/file.txt' # Ruta de destino destino = '/home/Usuario/Documentos ' # Copie el contenido de # origen al destino, intente: Shutil.copyfile(origen, destino) print('Archivo copiado correctamente.') # Si el origen y el destino son iguales excepto Shutil.SameFileError: print('Origen y el destino representa el mismo archivo.') # Si el destino es un directorio. excepto IsADirectoryError: print('El destino es un directorio.') # Si hay algún problema de permiso excepto PermissionError: print('Permiso denegado.') # Para otros errores excepto: print('Se produjo un error al copiar el archivo .') Salida: El destino es un directorio. Hemos cubierto el método de copiar un archivo en Python usando la funciónshutil.copyfile(). Es un método muy fácil de usar que puedes utilizar para copiar un archivo. Es muy útil cuando quieres crear un archivo duplicado. Lea también: ¿Cómo copiar un archivo en Python3? Método Shutil.copy() Copiar el contenido de un archivo a otro Copiar todos los archivos de un directorio a otro usando Python ¿Cómo crear un archivo duplicado de un archivo existente usando Python?>