Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reto #19 - Python #4165

Merged
merged 1 commit into from
Jul 18, 2023
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 38 additions & 0 deletions Retos/Reto #19 - ANÁLISIS DE TEXTO [Media]/python/klimyflorez.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
'''
/*
* Crea un programa que analice texto y obtenga:
* - Número total de palabras.
* - Longitud media de las palabras.
* - Número de oraciones del texto (cada vez que aparecen un punto).
* - Encuentre la palabra más larga.
*
* Todo esto utilizando un único bucle.
*/
'''

class CheckTexto:
def __init__(self, texto):
self.texto = texto
self.palabras = texto.split()
self.num_palabras = len(self.palabras)
self.longitud_total = sum(len(palabra) for palabra in self.palabras)
self.num_oraciones = texto.count('.')
self.palabra_mas_larga = max(self.palabras, key=len)

def longitud_media(self):
return self.longitud_total / self.num_palabras

def __str__(self):
return f"Número total de palabras: {self.num_palabras}\n" \
f"Longitud media de las palabras: {self.longitud_media()}\n" \
f"Número de oraciones del texto: {self.num_oraciones}\n" \
f"Palabra más larga: {self.palabra_mas_larga}"

texto = """La nave estelar USS Enterprise está bajo un gran reacondicionamiento y su excomandante, James T. Kirk, ha sido ascendido a Almirante y ahora es Jefe de Operaciones
de la Flota Estelar. Una poderosa fuerza alienígena, en forma de una masiva nube de energía con una longitud de 82 unidades astronómicas, es detectada en espacio Klingon y
parece dirigirse rumbo a la Tierra. A su paso, la nube destruye tres naves Klingons y la estación espacial de la flota Epsilon 9. Como única nave en rango del alcance,
la flota envía la Enterprise para interceptar la nube, acelerando su reacondicionamiento, el cual deberá ser probado en el transcurso de la misión asignada.
El Almirante Kirk toma el mando de la nave, lo cual disgusta al capitán Willard Decker, quien ha supervisado las mejoras como nuevo oficial. Con varios de los exmiembros
de la tripulación a bordo, la Enterprise inicia su viaje."""
palabra = CheckTexto(texto)
print(palabra)