in

Python | Método shutil.copyfile () – GeeksforGeeks

gfg 200x200 min

Python3

  

import shutil

source = "/home/User/Documents/file.txt"

destination = "/home/User/Documents"

try:

    shutil.copyfile(source, destination)

    print("File copied successfully.")

except shutil.SameFileError:

    print("Source and destination represents the same file.")

except IsADirectoryError:

    print("Destination is a directory.")

except PermissionError:

    print("Permission denied.")

except:

    print("Error occurred while copying file.")

Módulo Shutil en Python proporciona muchas funciones de operaciones de alto nivel en archivos y colecciones de archivos. Viene bajo los módulos de utilidad estándar de Python. Este módulo ayuda a automatizar el proceso de copia y eliminación de archivos y directorios.
shutil.copyfile () El método en Python se usa para copiar el contenido de fuente archivo a destino expediente. Los metadatos del archivo no se copian. Fuente y destino debe representar un archivo y destino debe poder escribirse. Si destino ya existe, entonces será reemplazado por el fuente archivo de lo contrario, se creará un nuevo archivo.
Si fuente y destino representa el mismo archivo entonces SameFileError se planteará una excepción.

Sintaxis: shutil.copyfile (origen, destino, *, follow_symlinks = True)
Parámetro:
fuente: Una cadena que representa la ruta del archivo de origen.
destino: Una cadena que representa la ruta del archivo de destino.
follow_symlinks (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 siguientes parámetros (aquí, en nuestro caso, ‘follow_symlinks’) son parámetros de palabras clave y se pueden proporcionar usando su nombre, no como parámetro posicional.
Tipo de devolución: Este método devuelve una cadena que representa la ruta del archivo recién creado.

Código # 1: Uso del método shutil.copyfile () para copiar el archivo desde el origen al destino

Python3

  

import os

import shutil

path = '/home/User/Documents'

print("Before copying file:")

print(os.listdir(path))

source = "/home/User/Documents/file.txt"

destination = "/home/User/Documents/file(copy).txt"

dest = shutil.copyfile(source, destination)

print("After copying file:")

print(os.listdir(path))

print("Destination path:", dest)

Producción:
Before copying file:
['hrithik.png', 'test.py', 'sample.txt', 'file.text', 'copy.cpp']
After copying file:
['hrithik.png', 'test.py', 'sample.txt', 'file.text', 'file(copy).txt', 'copy.cpp']
Destination path: /home/User/Documents/file(copy).txt

Código # 2: Posibles errores al usar el método shutil.copyfile ()

Python3

  

import shutil

source = "/home/User/Documents/file.txt"

destination = "/home/User/Documents/file.txt"

shutil.copyfile(source, destination)

Producción:
Traceback (most recent call last):
  File "copy.py", line 31, in 
    shutil.copyfile(source, destination)
  File "/usr/lib/python3.6/shutil.py", line 104, in copyfile
    raise SameFileError("{!r} and {!r} are the same file".format(src, dst))
shutil.SameFileError: '/home/User/Documents/file.txt' and '/home/User/Documents/file.txt'
are the same file

Código # 3: Manejo de errores al usar el método shutil.copyfile ()

Python3

  

import shutil

source = "/home/User/Documents/file.txt"

destination = "/home/User/Documents"

try:

    shutil.copyfile(source, destination)

    print("File copied successfully.")

except shutil.SameFileError:

    print("Source and destination represents the same file.")

except IsADirectoryError:

    print("Destination is a directory.")

except PermissionError:

    print("Permission denied.")

except:

    print("Error occurred while copying file.")

Producción:
Destination is a directory.

Referencia: https://docs.python.org/3/library/shutil.html

¡Atención geek! Fortalece tus cimientos con el Fundación de programación de Python Curso y aprende los conceptos básicos.

Para empezar, los preparativos de su entrevista Mejore sus conceptos de estructuras de datos con el Python DS Curso. Y para comenzar con su viaje de aprendizaje automático, únase al Aprendizaje automático – Curso de nivel básico

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

apple touch icon@2

linux: prueba un trabajo cron semanal

edit

Equal vs Splenda – Diferencia y comparación