Python Sentencias condicionales

Las sentencias condicionales de Python son bloques de código que determinan su ejecución según el resultado (True o False) de una o más sentencias.

Puedes comprender fácilmente el proceso de ejecución de las sentencias condicionales mediante el siguiente diagrama:

El lenguaje de programación Python especifica que cualquier valor distinto de 0 y no nulo (null) es true, mientras que 0 o null es false.

En la programación en Python, la sentencia if se utiliza para controlar la ejecución del programa; su forma básica es:

if 判断条件:
    执行语句……
else:
    执行语句……

Cuando la "condición de juicio" se cumple (es distinta de cero), se ejecutan las sentencias siguientes. El contenido a ejecutar puede ocupar varias líneas, y la indentación se utiliza para indicar que pertenecen al mismo ámbito.

else es una sentencia opcional; cuando se necesita ejecutar contenido si la condición no se cumple, se pueden ejecutar las sentencias correspondientes.

Demostración en GIF:

Un ejemplo concreto es el siguiente:

Ejemplo

#!/usr/bin/python # -*- coding: UTF-8 -*- # Ejemplo 1: uso básico de if flag = False name = 'luren' if name == 'python': # Comprobar si la variable es python flag = True # Si la condición se cumple, establecer la bandera como verdadera print 'welcome boss' # Y mostrar el mensaje de bienvenida else: print name # Si la condición no se cumple, mostrar el nombre de la variable

El resultado de salida es:

luren            # 输出结果

Las condiciones de juicio de la sentencia if pueden expresar sus relaciones mediante > (mayor que), < (menor que), == (igual a), >= (mayor o igual que) y <= (menor o igual que).

Cuando la condición de juicio tiene múltiples valores, se puede usar la siguiente forma:

if 判断条件1:
    执行语句1……
elif 判断条件2:
    执行语句2……
elif 判断条件3:
    执行语句3……
else:
    执行语句4……

El ejemplo es el siguiente:

Ejemplo

#!/usr/bin/python # -*- coding: UTF-8 -*- # Ejemplo 2: uso de elif num = 5 if num == 3: # Evaluar el valor de num print 'boss' elif num == 2: print 'user' elif num == 1: print 'worker' elif num < 0: # Mostrar salida cuando el valor es menor que cero print 'error' else: print 'roadman' # Mostrar salida cuando ninguna condición se cumple

El resultado de salida es:

roadman        # 输出结果

Debido a que Python no admite la sentencia switch, las múltiples condiciones solo se pueden implementar con elif. Si se necesitan evaluar varias condiciones al mismo tiempo, se puede usar or (o), lo que significa que la condición de juicio se cumple cuando una de las dos condiciones es verdadera; al usar and (y), la condición de juicio solo se cumple cuando ambas condiciones son verdaderas al mismo tiempo.

Ejemplo

#!/usr/bin/python # -*- coding: UTF-8 -*- # Ejemplo 3: múltiples condiciones en la sentencia if num = 9 if num >= 0 and num <= 10: # Comprobar si el valor está entre 0 y 10 print 'hello' # Resultado de salida: hello num = 10 if num < 0 or num > 10: # Comprobar si el valor es menor que 0 o mayor que 10 print 'hello' else: print 'undefine' # Resultado de salida: undefine num = 8 # Comprobar si el valor está entre 0~5 o entre 10~15 if (num >= 0 and num <= 5) or (num >= 10 and num <= 15): print 'hello' else: print 'undefine' # Resultado de salida: undefine

Cuando if tiene múltiples condiciones, se pueden usar paréntesis para distinguir el orden de evaluación de las condiciones; las condiciones dentro de los paréntesis se ejecutan primero. Además, la precedencia de and y or es menor que la de los operadores de comparación como > (mayor que) y < (menor que); es decir, sin paréntesis, las comparaciones de mayor y menor que se evalúan antes que and y or.

Grupo de declaraciones simples

También puedes usar la sentencia condicional if en la misma línea, como en el siguiente ejemplo:

Ejemplo

#!/usr/bin/python # -*- coding: UTF-8 -*- var = 100 if ( var == 100 ) : print "El valor de la variable var es 100" print "Good bye!"

El resultado de la ejecución del código anterior es el siguiente:

变量 var 的值为100
Good bye!
Otras extensiones