Python - bucle for

   
Vista:

bucle for

Publicado por Keldar (10 intervenciones) el 04/03/2014 21:27:12
Bueno como dije el otro dia estoy siguiendo el libro aprende a pensar como un programador con python y me ha surgido un problemilla.
explica un poco el bucle for y pone este ejemplo:
1
2
3
4
prefijos = "JKLMNOPQ"
sufijo = "ack"
for letra in prefijos:
='editor_indent'>print letra + sufijo

y despues pone esto:
Por supuesto, esto no es del todo correcto, porque "Ouack" y "Quack" no estan correctamente escritos.
Como ejercicio, modifique el programa para corregir este error.
resulta que he mientras escribía esto he conseguido que funcionara pero aun asi tengo una duda.
de esta manera funciona:

1
2
3
4
5
6
7
prefijos = "JKLMNOPQ"
sufijo = "ack"
for letra in prefijos:                     #el error estaba en la condicion:
    if letra == "O" or letra == "Q":       #if letra == "O" or "Q"
         print letra + "u" + sufijo        #No es la primera vez que 
    else:                                  #me pasa...
         print letra + sufijo              #

pero mi duda es porke el codigo anterior si funciona y este no:
1
2
3
4
5
6
7
prefijos = "JKLMNOPQ"
sufijo = "ack"
for letra in prefijos:
    if letra != "O" or letra != "Q":
         print letra + sufijo
    else:
         print letra + "u" + sufijo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

bucle for

Publicado por xve (1237 intervenciones) el 05/03/2014 08:18:20
Hola Keldar, el tema esta en el OR... si en vez de :
1
if letra != "O" or letra != "Q":
hubieras puesto:
1
if letra != "O" and letra != "Q":
debería de funcionar-te también...

El tema esta en que cualquier cosa es diferente de (O o Q) ya que la condición siempre se cumple.

No se si me he explicado bien...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

bucle for

Publicado por Keldar (10 intervenciones) el 05/03/2014 09:19:40
si te has explicado bien si, vamos que siempre va a ser diferente de una u otra, vaya fallo mas tonto
muchas gracias por contestar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar