cadena = raw_input('Escribe una frase: ')
while cadena != '':
blancos = 0
for caracter in cadena:
if caracter == ' ':
blancos += 1
palabras = blancos + 1 # Hay una palabra m ́s que blancos
print 'Palabras:', palabras
cadena = raw_input('Escribe una frase: ')
Hola,estoy en la pagina 157 del tutorial de python que he encontrado en este foro,llegado a este punto ma so menos lo llevo bien pero me he encontrado con este code y no entiendo completamente el funcionamiento de estas lineas:
for caracter in cadena:
if caracter == ' ':
blancos += 1
comprendo el funcionamiento en conjunto pero si yo lo tuviera que hacer no sabria porque es asi,me expreso mal pero bueno,agradeceria una explicacion que pueda etender,gracias.
Lo primero, si no identas el code no va a funcionar.
cadena = "hola"
for caracter in cadena:
print caracter
Bien, tenemos una cadena "hola".
Esa cadena contiene 4 caracteres.
Bien, pues en cada ciclo del for, la variable va valer el caracter n de la cadena.
Es decir, en el primer ciclo caracter='h', en el segundo caracter='o', y así hasta que se termine.
Tu código:
for caracter in cadena:
if caracter == ' ':
blancos += 1
Comprueba que caracter sea un espacio, si lo es, sumamos 1 al contador blancos.
Saludos!