Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: Ricardo95 en 2 Diciembre 2010, 18:06 pm



Título: Duda con for in aumento [python]
Publicado por: Ricardo95 en 2 Diciembre 2010, 18:06 pm
Código
  1. cadena = raw_input(’Escribe una frase: ’)
  2. while cadena != ’’:
  3. blancos = 0
  4. for caracter in cadena:
  5. if caracter == ’ ’:
  6. blancos += 1
  7. palabras = blancos + 1 # Hay una palabra m ́s que blancos
  8.  
  9. print ’Palabras:’, palabras
  10.  
  11. 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:
Código:
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.


Título: Re: Duda con for in aumento
Publicado por: xassiz~ en 2 Diciembre 2010, 18:12 pm
Lo primero, si no identas el code no va a funcionar.

Código
  1. cadena = "hola"
  2. for caracter in cadena:
  3.    print caracter
  4.  
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:
Código
  1. for caracter in cadena:
  2.    if caracter == ' ':
  3.        blancos += 1
Comprueba que caracter sea un espacio, si lo es, sumamos 1 al contador blancos.


Saludos!