Python - Nivel 11 - Reto 14 - Encontrar la palabra más larga de una lista

preview_player
Показать описание
En este vídeo hacemos un programa para encontrar la palabra más larga de una lista de palabras.
Рекомендации по теме
Комментарии
Автор

Gracias a los videos he aprendido a perfeccionar mis códigos mas allá de lo simple. Pude hacer el mismo código, pero que muestra todas las palabras que tienen mayor longitud. En el caso del ejercicio: lampara y armario.

lista_palabras, PalabraL, masp = ["mesa", "armario", "silla", "lampara", "cuadro"], "", []

for i in lista_palabras:
if len(i) >= len(PalabraL): PalabraL = i
else: continue
for e in lista_palabras:
if len(PalabraL) == len(e) and e != PalabraL: masp.append(e)
else: continue
masp.append(PalabraL)
print(f"La palabra/s mas largas es/son {', '.join(masp)} ")

andrescamilocaballeroayala
Автор

Justamente estaba buscando como hacer y no sabia pa que servica NONE muchas gracias enserio se lo agradesco

Victorinocolqueduran
Автор

Obtuve una solución parecida... aunque mi primer intento solo me salía "lámpara", intente solucionarlo pero no logre muchos resultados. El segundo me guíe un poco de tu código (no lo voy a negar, solo le eche una ojeada como para guiarme y hacer un código con claras influencias tuyas) gracias por tus ejercicios y tus clases 🤩🤗🤩🤗
"""1. Intento"""
lista_palabras = ["mesa", "armario", "silla", "lámpara", "cuatro"]
contador, guardar = "", ""
for i in range(len(lista_palabras)):
if len(guardar) > len(lista_palabras[i]):
contador = guardar
guardar = lista_palabras[i]
print(f'La palabra mayor es: {contador}')

"""2. Intento"""

lista_palabras = ["mesa", "armario", "silla", "lámpara", "cuatro"]
palabra, contador = None, 0

for i in lista_palabras:
if palabra is None or len(palabra) <
palabra = i
contador += 1

print(palabra)

josekachkaniraqmi
Автор

Hola don Manuel. Antes de nada muchas gracias por sus enseñanzas.
Estoy intentando averiguar la forma de que en caso de que haya dos o más palabras que tengan la misma longitud como hacer para que salieran la/s palabras en el print
Muchas gracias de nuevo y saludos!

gamosupremo
Автор

lista = ['mesa', 'armario', 'silla', 'lámpara', 'cuadro']

var = None
palabra = None

for i in lista:
x = len(i)
if var is None or var < x:
var = x

for j in lista:
if len(j) == var:
palabra = j
break

print(palabra)

martinibanez
Автор

Muchas gracias por todos los videos. Me están ayudando mucho!!!

No entiendo muy bien para que se usa el contador en este código así que yo no lo he puesto y me funciona bien. He probado intercambiar "armario" y "lámpara" y me sigue dando la primera puesto que la condición es que palabra_mas_larga solo sea igual a "i" cuando la longitud es mayor y no igual. Al poner un espacio antes de "lámpara" es decir " lámpara", ahí sí que me da que es la mayor.


lista_palabras = ["mesa", "armario", "silla", "lámpara", "cuadro"]

palabra_mas_larga = None

for i in lista_palabras:
if palabra_mas_larga is None or len(i) > len(palabra_mas_larga):
palabra_mas_larga = i

print(palabra_mas_larga)

anez