Escribir una función que reciba como parámetro una cadena de palabras separadas por espacios y devuelva, como resultado, cuántas palabras de más de cinco letras tiene la cadena dada.
def cadena(a):
lista=a.split() # convierte las plabras en una lista
lista_mayor_5=[]
for w in lista:
if len(w)>5 :
lista_mayor_5.append(w)
return(len(lista_mayor_5))
x=input(“str:”)
print(cadena(x))
import functools
def calcular_cuantas_palabras_existen_de_cierta_longitud(frase, limite=5):
return functools.reduce(
lambda cantidad, palabra: cantidad + 1 if len(palabra) >= limite else cantidad,
frase.split(" "),
0,
)
print(calcular_cuantas_palabras_existen_de_cierta_longitud("En un lugar de la Mancha"))
# 2
def gt5(text: str, limit: int = 5) -> int:
return sum(1 for s in text.split() if len(s) > limit)
def contar_palabras(cadena):
# Separamos la cadena en palabras
palabras = cadena.split(" ")
# Filtramos las palabras que tienen más de 5 letras
resultado = list(filter(lambda x: len(x) > 5, palabras))
# Devolvemos el número de elementos del resultado
return len(resultado)
Creamos la cadena de prueba
cadena = “Este es un ejemplo de una cadena con muchas palabras”
Mostramos por pantalla el número de palabras
print(contar_palabras(cadena))
1 me gusta