[Python-es] curioso comportamiento de if elif

Manuel A. Estevez Fernandez stvzito en gmail.com
Dom Feb 26 18:53:10 CET 2012


Primero lo que veo en tu codigo es que no está entre paréntesis y por 
eso marca el error.

   File "<stdin>", line 4
     print 'otra cosa'
                     ^
SyntaxError: invalid syntax


Segundo: estas trabajando en la consola, entonces cuando abres una 
sentencia :
 >>> if <condicion>:
... <--- se abre un "bloque de código"
y el intérprete no comienza a realizar el análisis hasta que se cierra 
cuando detecta un "enter" después del bloque abierto.
... <otra cosa> \n
<resultado en caso de haberlo>
 >>>

Y este es un ejemplo para que veas que entra en la primera condición y sale.

 >>> if var=='1':
...     print('uno')
... elif var=='2':
...     print('dos')
... elif var=='1':
...     print('uno otra vez')
...
uno




Más información sobre la lista de distribución Python-es