¿Cuál es la sintaxis correcta para "si no"?

Resuelto asked hace 14 años • 6 respuestas

Soy un nuevo programador de Python que está dando el salto de 2.6.4 a 3.1.1. Todo salió bien hasta que intenté usar la declaración "si no". El intérprete me da un error de sintaxis después de 'si' en 'si no' por una razón que parece que no puedo entender.

def function(a):
    if a == '1':
        print ('1a')
    else if a == '2'
        print ('2a')
    else print ('3a')

function(input('input:'))

Probablemente me estoy perdiendo algo muy simple; sin embargo, no he podido encontrar la respuesta por mi cuenta.

 avatar Mar 07 '10 11:03
Aceptado

En Python "else if" se escribe "elif".
Además, necesita dos puntos después de elify else.

Respuesta sencilla a una pregunta sencilla. Tuve el mismo problema cuando comencé (en las últimas semanas).

Entonces tu código debería leer:

def function(a):
    if a == '1':
        print('1a')
    elif a == '2':
        print('2a')
    else:
        print('3a')

function(input('input:'))
Frames Catherine White avatar Mar 07 '2010 04:03 Frames Catherine White

Quieres decir elif?

Nick Presta avatar Mar 07 '2010 04:03 Nick Presta