Ir al contenido principal

Copiando archivos, con el módulo "shutil" de python.

Saludos, mi nombre es Antonio Alfonso Martínez y en el presente articulo vamos a crear un sencillo programa para copiar archivos de una carpeta a otra, haciendo uso del módulo "shutil" de python (un módulo instalado con python que nos permitirá realizar diversas operaciones con archivos y carpetas) y, concretamente, de la función "copyfile".

Así, lo primero que haremos será importar desde el mencionado módulo, la función que vamos a emplear para la copia de archivos (función "copyfile"). A su vez, importaremos desde "sys" la función "exit" para finalizar el programa en determinadas circunstancias:

copy

Para poder copiar un archivo desde una ubicación a otra distinta, lo primero que deberá "saber" nuestro programa es la ubicación actual del archivo a copiar. A su vez para realizar la copia en otra ubicación, tendremos, también, que especificarle el destino del mismo.

Para ello, crearemos dos variables, llamadas "origen" y "destino", las cuales constituirán sendos "inputs" en los que el usuario deberá introducir la ruta completa que defina la ubicación, tanto de la ubicación actual del archivo ("origen") como la ruta en la que se encuentra la ubicación en la que se va a copiar el archivo (variable "destino"):

copy2

Una vez que nuestro programa disponga de tal información, estará ya listo para realizar la copia mediante "copyfile()", función que tomará como argumentos la ruta, tanto de la ubicación actual como la ruta de la ubicación de destino, tal y como se aprecia en la imagen:

copy3

No obstante, hemos de tener en cuenta que en ocasiones, dicha tarea no pueda completarse. Es por ello por lo que vamos a incluir tal función ("copyfile()") en una sentencia "try". De modo, que así estamos indicándole al programa que "intente" realizar dicha operación, y que de no poder realizarse, se ejecute las excepciones ("except")previstas para este caso. En donde haremos, también, uso de la función "sys.exc_info()" mediante la que estaremos llamando al sistema operativo para que nos indique la razón por la que no ha podido realizarse la copia:

denied
Para el caso en que se haya podido completar la operación, (que indicaremos con el texto "Copia realizada con éxito"), daremos al usuario la posibilidad de visualizar el archivo copiado en su nueva ubicación:

good

Para la visualización del archivo, nuestro programa procederá a abrirlo en modo lectura ("archivo=open(origen,"r")") para, acto seguido, leerlo mediante la función ".read()". Por contra, en caso que la opción "comprobar" haya sido "n" (no), el ciclo en el que se encuadra esta parte del código, finalizará mediante la correspondiente sentencia "break".

Podéis ver el código completo en el siguiente enlace a Github:

https://github.com/antonioam82/ejercicios-python/blob/master/copiador.py

Saludos.




Comentarios

Entradas más populares de este blog

Descargar vídeos y audios de YouTube con Python y Pafy

Introducción: YouTube es una plataforma que nos permite disfrutar de vídeos informativos, películas, música y mucho, mucho más. Siempre que escuchamos una canción queremos descargarla, si vemos un vídeo también queremos descargarlo, de esta manera podríamos verlos desde donde queramos sin necesidad de una conexión a Internet. Hoy te enseñare a descargar vídeos y audios de el sitio web conocido como YoutTube, esto lo lograremos haciendo uso de una librería llamada Pafy, si aun no tienes la librería Pafy, puedes descargarla ingresando al siguiente enlace:  Librería Pafy . Usando Pafy: Pafy una biblioteca de Python para descargar contenido de YouTube y recuperar metadatos. Antes de descargar contenido, usaremos a Pafy para obtener información de un vídeo especifico. A continuación te mostrare un ejemplo para obtener el titulo de un vídeo. import pafy url_video = " https://www.youtube.com/watch?v=JkK8g6FMEXE " video = pafy.new(url_video) pr

Calculando el factorial de un número (ejemplo de función recursiva).

Hola, mi nombre es Antonio Alfonso Martínez y en el presente artículo me dispongo a explicar un sencillo método para calcular el factorial de un número haciendo uso del concepto de recursividad. Para empezar, diremos que el factorial de un número natural "n" es el resultado del producto de todos los números desde 1 hasta dicho número "n". Así, para efectuar el calculo del factorial de un número, vamos a emplear una sencilla función a la que daremos el nombre de "factorial". De modo, que, partiendo del hecho de que el factorial de 1 y 0 es 1, construiremos nuestra función (a la que daremos el nombre de "factorial") para realizar el calculo del factorial de 5: Lo que hace esta función, es tomar como argumento un número "n". de modo que si este es 0 o 1 ("if n==0 or n==1:") la función devolverá directamente como resultado el número 1 ("resultado=1"). Sin embargo si dicho número "n" es mayor que

Sistema Hexadecimal - Sistema de numeración posicional

Sistema Hexadecimal El sistema hexadecimal es un sistema numérico que tiene como base el numero 16, y es una variante de los numero binarios El sistema hexadecimal es utilizado por nuestros ordenadores con el fin de abreviar valores de datos e instrucciones de memoria. Esta es una imagen que muestra el contenido de un archivo con exención 'dll' en un editor de texto, como el editor de texto no reconoce este tipo de archivo, nos lo muestra de esta manera: Como se puede apreciar, en vez de ver una gran cantidad de 0 y 1, vemos que hay grupos de 4 dígitos, y si observamos, vemos que son grupos de dígitos hexadecimales. El archivo cuentan con más de 48 mil lineas, por ello no se me es posible mostrarlo todo. Este es uno de los usos del sistema hexadecimal para abreviar grandes cantidades de 0 y 1. Ustedes mismos pueden hacer la prueba con una imagen o con cualquier otro tipo de texto. El sistema hexadecima, esta conformado por solo 16 dígitos. A continuación te los