Foros del Web » Programando para Internet » Python »

Ver cuantas palabras tiene una frase

Estas en el tema de Ver cuantas palabras tiene una frase en el foro de Python en Foros del Web. @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código python: Ver original cadena = raw_input ( 'Escribe una frase: ' ) while cadena != '' :   cambios = 0   ...
  #1 (permalink)  
Antiguo 21/11/2008, 08:33
Avatar de zertex  
Fecha de Ingreso: noviembre-2008
Ubicación: villarrica chile
Mensajes: 26
Antigüedad: 16 años
Puntos: 1
Ver cuantas palabras tiene una frase

Código python:
Ver original
  1. cadena = raw_input('Escribe una frase: ')
  2. while cadena != '':
  3.   cambios = 0
  4.   for i in range(1, len(cadena)):
  5.     if cadena[i] == ' ' and cadena[i-1] != ' ':
  6.       cambios = cambios + 1
  7.  
  8.   if cadena[-1] == ' ':
  9.     cambios = cambios - 1
  10.  
  11.   palabras = cambios + 1
  12.   print 'Palabras:', palabras
  13.  
  14.   cadena = raw_input('Escribe una frase: ')

Última edición por AlvaroG; 21/11/2008 a las 11:12 Razón: resaltado de sintaxis
  #2 (permalink)  
Antiguo 21/11/2008, 09:19
venkman
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Ver cuantas palabras tiene una frase

Ver la respuesta de David el Grande debajo.

Última edición por venkman; 21/11/2008 a las 09:26
  #3 (permalink)  
Antiguo 21/11/2008, 09:22
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 6 meses
Puntos: 839
Respuesta: Ver cuantas palabras tiene una frase

También puedes hacerlo así:
Código python:
Ver original
  1. cadena = raw_input("Escriba una frase: ")
  2. print("Numero de palabras: " + str(len(cadena.split(" "))))
Lo que hace es llamar al método split de la cadena, lo cual separa la cadena en partes de acuerdo al caracter especificado, lo convierte en una lista. Por ejemplo:
Código:
"Esto es una frase".split(" ")
Tendría como resultado:
Código:
['Esto', 'es', 'una', 'frase']
Una lista con cada palabra, entonces, para contar cuántos elementos tiene la lista (o sea, cuántas palabras hay) usamos len().

Saludos .Edito: Choque con venkman . Saludos .
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:39.