C: Ejercicios resueltos¶
Ejercicio C.1:
Hagamos un script que pregunte al usuario por una cadena de texto y te diga si esa palabra es una palabra que esté en el diccionario de la RAE o no. Para eso podemos bajarnos el fichero .txt
con todas las palabras de dicho diccionario de este repositorio. Por cierto que en dicho repositorio el autor cuenta como ha obtenido dicha lista de palabras (un ejercicio de scraping interesante, que veremos
más adelante).
[1]:
# Descargamos el fichero (esto aún no hay que saberlo)
import requests
url = 'https://raw.githubusercontent.com/JorgeDuenasLerin/diccionario-espanol-txt/master/0_palabras_todas.txt'
r = requests.get(url);
open('salidas/0_palabras_todas.txt', 'wb').write(r.content)
f = open("salidas/0_palabras_todas.txt", "r")
palabras = f.readlines()
f.close()
for i in range(1,len(palabras)):
palabras[i] = palabras[i].strip()
palabra = input("Dime una palabra cualquiera: ")
if palabra in palabras:
print(f'La palabra "{palabra}" SI está en el diccionario de la RAE')
else:
print(f'La palabra "{palabra}" NO está en el diccionario de la RAE')
Dime una palabra cualquiera: esternocleidomastoideo
La palabra "esternocleidomastoideo" SI está en el diccionario de la RAE
Ejercicio C.5:
Lista todos los ficheros del directorio ficherosAuxiliares
que tengan una extension .jpg
o .png
.
[2]:
from pathlib import Path
directorio = Path('ficherosAuxiliares')
for hijo in directorio.iterdir(): # Iteramos por todos los ficheros (y directorios) de un directorio
nombreArchivo = str(hijo)
if nombreArchivo.endswith(".jpg") or nombreArchivo.endswith(".png"):
print(hijo)
ficherosAuxiliares/fractal2.png
ficherosAuxiliares/fractal.png
ficherosAuxiliares/ESP32_motor_real.jpg
ficherosAuxiliares/portadaWebScraping.jpg
ficherosAuxiliares/INDI_kstars_03.jpg
ficherosAuxiliares/fractalGris.png
ficherosAuxiliares/moduloGPS.jpg
ficherosAuxiliares/ocultacionTritonAnotada.png
ficherosAuxiliares/data_cube.jpg
ficherosAuxiliares/ESP32_led.jpg
ficherosAuxiliares/INDI_kstars_02.jpg
ficherosAuxiliares/the-spectral-data-cube.png
ficherosAuxiliares/ESP32.jpg
ficherosAuxiliares/ocultacionTriton.png
ficherosAuxiliares/portadaCurso.jpg
ficherosAuxiliares/portadaINDI.jpg
ficherosAuxiliares/INDI_kstars_01.jpg
ficherosAuxiliares/ESP32_led_real.jpg
ficherosAuxiliares/stacking-images.jpg
Ejercicio C.6:
Transforma con el comando externo convert
de ImageMagick todas las imagenes .jpg
y .png
que haya en el directorio ficherosAuxiliares
haciéndolas en doble de grandes y cuyo nombre de archivo sea el nombre original añadiéndole _doble
. Por ejemplo, el fichero fractal.png
deberá llamarse fractal_doble.png
. Los ficheros copiados deberán grabarse en la carpeta salidas
.
[3]:
from pathlib import Path
import subprocess
nombreDirEntrada = 'ficherosAuxiliares'
directorio = Path(nombreDirEntrada)
nombreDirSalidas = "salidas"
for hijo in directorio.iterdir(): # Iteramos por todos los ficheros (y directorios) de un directorio
nombreArchivo = str(hijo)
if nombreArchivo.endswith(".jpg") or nombreArchivo.endswith(".png"):
print(hijo)
nuevoNombre = nombreDirSalidas + nombreArchivo[len(nombreDirEntrada):-4] + "_doble" + nombreArchivo[-4:]
print(nuevoNombre)
subprocess.run(["convert", nombreArchivo, "-resize", "200%", nuevoNombre])
ficherosAuxiliares/fractal2.png
salidas/fractal2_doble.png
ficherosAuxiliares/fractal.png
salidas/fractal_doble.png
ficherosAuxiliares/ESP32_motor_real.jpg
salidas/ESP32_motor_real_doble.jpg
ficherosAuxiliares/portadaWebScraping.jpg
salidas/portadaWebScraping_doble.jpg
ficherosAuxiliares/INDI_kstars_03.jpg
salidas/INDI_kstars_03_doble.jpg
ficherosAuxiliares/fractalGris.png
salidas/fractalGris_doble.png
ficherosAuxiliares/moduloGPS.jpg
salidas/moduloGPS_doble.jpg
ficherosAuxiliares/ocultacionTritonAnotada.png
salidas/ocultacionTritonAnotada_doble.png
ficherosAuxiliares/data_cube.jpg
salidas/data_cube_doble.jpg
ficherosAuxiliares/ESP32_led.jpg
salidas/ESP32_led_doble.jpg
ficherosAuxiliares/INDI_kstars_02.jpg
salidas/INDI_kstars_02_doble.jpg
ficherosAuxiliares/the-spectral-data-cube.png
salidas/the-spectral-data-cube_doble.png
ficherosAuxiliares/ESP32.jpg
salidas/ESP32_doble.jpg
ficherosAuxiliares/ocultacionTriton.png
salidas/ocultacionTriton_doble.png
ficherosAuxiliares/portadaCurso.jpg
salidas/portadaCurso_doble.jpg
ficherosAuxiliares/portadaINDI.jpg
salidas/portadaINDI_doble.jpg
ficherosAuxiliares/INDI_kstars_01.jpg
salidas/INDI_kstars_01_doble.jpg
ficherosAuxiliares/ESP32_led_real.jpg
salidas/ESP32_led_real_doble.jpg
ficherosAuxiliares/stacking-images.jpg
salidas/stacking-images_doble.jpg