Buenas gente, estoy en el ejercicio num 241, bueno, la letra dice:
· 241 En una cadena llamada texto disponemos de un texto formado por varias frases. Escribe un programa que determine y muestre el número de palabras de cada frase
tengo que hacer un programa que cuente las palabras dentro de cada frase, y indique cuantas palabras hay en tal frase. Yo lo que hice fue esto:
frases=raw_input("Frases: ")
fra=frases.split(".")
for i in range(1,len(fra)+1):
pal=len(fra[i].split(" "))
print "Frase ",i,": ",pal
¿en que me equivoqué?, el error indica list index out of range .
se en que me equivoque, en la 4º linea, pero como lo arreglo?
PD: Yo interprete la pregunta como que las frases se separan por un punto
desde ya muchas gracias ;D
Es que te estas complicando solo :P
frases=raw_input("Frases: ")
fra=frases.split(".")
for i in fra:
pal=len(i.split(" "))
print "Frase ",i,": ",pal
Saludos
Pero sobre todo mira lo que hace range y lo que son los índices de los arrays.
Cita de: ·def contar(frases):
fra=frases.split(".")
for i in range(len(fra)):
pals=len(fra[i].split(" "))
print "Frase ",i,": ",pals
Gracias por las respuestas :D, gracias novlucker por el script, parece tar correcto
Solo una pequeña anotacion, si en split() no pones ninguna cadena ya toma por defecto un espacio :)
Es decir:
"LO QUE SEA".split(" ") === "LO QUE SEA".split()