![Lectura digital en Arduino](https://trspos.com/wp-content/uploads/lectura-digital-arduino-400x267.jpg)
Python Shutil Move()
![Python Shutil Move()](https://trspos.com/wp-content/uploads/python-shutil-move.jpg)
El módulo `Shutil` es una herramienta poderosa en Python que nos permite realizar operaciones con archivos. Uno de los métodos que podemos utilizar es `move()`, que nos permite mover un archivo o un directorio a una nueva ubicación o renombrarlo.
Funcionamiento
Para utilizar `move()`, necesitamos importar el módulo de la siguiente manera:
import shutil
Luego, podemos utilizar el método para mover archivos o directorios. La sintaxis básica es la siguiente:
shutil.move(origen, destino)
Donde `origen` es la ruta del archivo o directorio que queremos mover y `destino` es la ruta donde queremos moverlo.
Es importante tener en cuenta que si el archivo que queremos mover ya existe en la nueva ubicación, será sobrescrito sin previo aviso. Por este motivo, es recomendable verificar antes de utilizar `move()`.
Ejemplos de uso
Para mover un archivo, utilizamos la ruta completa del archivo como origen y la nueva ubicación como destino. Por ejemplo, para mover un archivo `ejemplo.txt` de la carpeta actual a la carpeta `/home/usuario/documentos/`:
shutil.move('ejemplo.txt', '/home/usuario/documentos/')
También podemos renombrar un archivo utilizando `move()`. Para ello, simplemente utilizamos el nombre nuevo como destino. Por ejemplo, para renombrar `ejemplo.txt` como `nuevo_ejemplo.txt` en la misma carpeta:
shutil.move('ejemplo.txt', 'nuevo_ejemplo.txt')
Podemos mover directorios enteros utilizando `move()` de la misma manera. En este caso, el directorio de origen y destino deben existir y el directorio de destino no debe contener ningún archivo con el mismo nombre que el directorio de origen. Por ejemplo, para mover el directorio `carpeta_ejemplo` de la carpeta actual a `/home/usuario/documentos/`:
shutil.move('carpeta_ejemplo', '/home/usuario/documentos/')
Conclusión
El método `move()` del módulo `Shutil` es una herramienta muy útil para la manipulación de archivos y directorios en Python. Al aprender a utilizarlo correctamente, podemos automatizar tareas en nuestros programas y trabajar de manera más eficiente.
Preguntas frecuentes
¿Puedo utilizar `move()` para renombrar un directorio?
Sí, para renombrar un directorio simplemente utilizamos el nombre nuevo como destino al igual que con los archivos.
¿Qué ocurre si el archivo de origen no existe?
Si el archivo de origen no existe, `move()` lanzará un error indicando que el archivo no se encuentra.
¿Cómo puedo verificar si el archivo ya existe en la ubicación de destino?
Podemos verificar si el archivo existe utilizando el módulo `os`. Por ejemplo:
import os
if os.path.isfile('/ruta/de/destino/archivo.txt'):
print('El archivo ya existe en esa ubicación')
¿Puedo utilizar `move()` para mover varios archivos a la vez?
No, `move()` solo puede mover un archivo o un directorio a la vez. Para mover varios archivos, es necesario utilizar un ciclo For y llamar a `move()` en cada archivo individualmente.
Ejemplo de Código
Este ejemplo utiliza `move()` para mover archivos que cumplan ciertas condiciones (en este caso, que el nombre del archivo contenga la palabra 'ejemplo') desde la carpeta actual a una subcarpeta llamada `archivos_ejemplo`.
```python
import os
import shutil
if not os.path.isdir('archivos_ejemplo'):
os.mkdir('archivos_ejemplo')
for archivo in os.listdir():
if 'ejemplo' in archivo:
shutil.move(archivo, 'archivos_ejemplo/' + archivo)
```
Deja una respuesta