Introducción a la programación Python (017): selección de programación estructurada

Introducción a la programación Python (017): selección de programación estructurada

La estructura de selección en el programa también se denomina estructura de juicio, que selecciona y ejecuta diferentes fragmentos de código según las condiciones. Hay tres formas principales de estructuras de selección en Python: declaraciones if, declaraciones if...else y declaraciones if...elif...else.

1. si declaración

El formato de sintaxis de la declaración if es el siguiente:

if 表达式:
    语句块

ilustrar:

(1) Expresión: puede ser una expresión de comparación o una expresión lógica. Si el valor de la expresión es Verdadero, se ejecuta el bloque de instrucciones; si el valor de la expresión es Falso, el bloque de instrucciones se omite y se ejecutan las instrucciones siguientes.

(2) Los operadores de comparación más utilizados en expresiones se muestran en la siguiente tabla:

operador de comparación > >= == != < <=
efecto más que el Mayor qué o igual a igual no igual a menos que Menos que o igual a

Operadores logicos:

Operadores logicos y o no
efecto lógico Y lógico o negación lógica

(3) Python usa sangría de código y dos puntos para distinguir niveles entre códigos. Los dos puntos al final de la línea de expresión if y la sangría de la línea siguiente (generalmente se usan 4 espacios como cantidad de sangría) indican el comienzo de un bloque de código, y el final de la sangría indica el final de un bloque de código. Al utilizar declaraciones if, debe seguir estrictamente las reglas de sangría para la codificación.

Ejemplo 1:

test = input("请输入转账金额:")
if int(test) > 5000:
    print("单笔转账金额不能超过5000元")
    
运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
请输入转账金额:8000
单笔转账金额不能超过5000

Ejemplo 2: problema de sangría

test = input("请输入转账金额:")
if int(test) > 5000:
    print("单笔转账金额不能超过5000元")
print("程序结束")  # 该行代码不属于if语句的代码块
    
运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
请输入转账金额:2000
程序结束

Ejemplo 3:

num = int(input("请输入一个整数:"))
if num > 0 and num % 2 == 0:
    num **= 2
print(num)
    
运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
请输入一个整数:4
16
>>> 
请输入一个整数:15
15

2. si...si no declaración

El formato de sintaxis de la declaración if…else es el siguiente:

if 表达式:
    语句块1
else:
    语句块1

Descripción: Si se cumple la condición especificada por la expresión, se ejecuta el bloque de instrucciones después de if; de lo contrario, se ejecuta el bloque de instrucciones después de else.

Ejemplo 1:

num = int(input("请输入一个整数:"))
if num % 2 == 0:
    print("你输入了一个偶数")
else:
    print("你输入了一个奇数")
print("程序结束")
    
运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
请输入一个整数:15
你输入了一个奇数
程序结束
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入一个整数:200
你输入了一个偶数
程序结束

Ejemplo 2: anidamiento de declaraciones if...else

num = float(input("请输入一个数:"))
if num > 0:
    print("你输入了一个正数")
else:
    if num < 0:
        print("你输入了一个负数")
    else:
        print("你输入的数是0")
print("程序结束")
    
运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
请输入一个数:100
你输入了一个正数
程序结束
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入一个数:-2.5
你输入了一个负数
程序结束
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入一个数:0
你输入的数是0你
程序结束

3. declaración if…elif…else

El formato de sintaxis de la declaración if…elif…else es el siguiente:

if 表达式1:
    语句块1
elif:
    语句块2
elif:
    语句块3
....
else:
    语句块n

Descripción: La declaración if...elif...else es una declaración de selección de múltiples ramas. Cuando el valor de una determinada expresión es verdadero, se ejecuta el bloque de declaración posterior; si el valor de la expresión es más, la declaración posterior el bloque se omite y se ejecuta Evaluación de la siguiente expresión elif. Si todas las expresiones no son verdaderas, se ejecuta el bloque de instrucciones que sigue a else.

Ejemplo 1: determinar si un número es positivo, negativo o 0

num = float(input("请输入一个数:"))
if num > 0:
    print("你输入了一个正数")
elif num < 0:
    print("你输入了一个负数")
else:
    print("你输入数是0")
print("程序结束")
    
运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
请输入一个数:5
你输入了一个正数
程序结束
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入一个数:0
你输入数是0
程序结束
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入一个数:-12.5
你输入了一个负数
程序结束

Ejemplo 2: Ingresar el puntaje y determinar su calificación (excelente, bueno, medio, aprobado, reprobado)

num = float(input("请输入考试成绩:"))
if num > 100 or num < 0:
    print("成绩输入错误!")
elif num >=90:
    print("优秀")
elif num >=80:
    print("良好")
elif num >=70:
    print("中等")
elif num >=60:
    print("及格")
else:
    print("不及格")
print("程序结束")
    
运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
请输入考试成绩:500
成绩输入错误!
程序结束
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入考试成绩:100
优秀
程序结束
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入考试成绩:25
不及格
程序结束
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入考试成绩:60
及格
程序结束
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入考试成绩:80
良好
程序结束
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入考试成绩:75
中等
程序结束

4. Combinar declaraciones de selección de múltiples ramas con diccionarios

Para algunas declaraciones if...elif...else cuyos bloques de declaraciones son relativamente simples (el bloque de declaraciones tiene solo una salida), la expresión y el contenido de salida del bloque de declaraciones se pueden guardar en el diccionario.

Por ejemplo:

dict1 = {
    
    "1":"查看","2":"添加","3":"删除","4":"更新","0":"退出系统"}
num = input("请输入你的操作类型(0-4):")
select = dict1.get(num,"a")
if select != "a":
    print("你选择的操作类型为:",select)
else:
    print("不存在你要选择的操作")
print("程序结束")
    
运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
请输入你的操作类型(0-4)0
你选择的操作类型为: 退出系统
程序结束
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入你的操作类型(0-4)1
你选择的操作类型为: 查看
程序结束
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入你的操作类型(0-4)2
你选择的操作类型为: 添加
程序结束
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入你的操作类型(0-4)3
你选择的操作类型为: 删除
程序结束
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入你的操作类型(0-4)4
你选择的操作类型为: 更新
程序结束
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入你的操作类型(0-4)5
不存在你要选择的操作
程序结束

5. Operador lógico y

Puede usar el operador y para juzgar múltiples condiciones. Solo cuando se cumplen múltiples condiciones al mismo tiempo se puede ejecutar el bloque de declaración después de if.

Por ejemplo:

score1 = float(input("请输入笔试成绩:"))
score2 = float(input("请输入机试成绩:"))
if score1 >= 60 and score2 >= 60:
    print("计算机等级考试通过!")
else:
    print("计算机等级考试没通过!")
print("程序结束")
    
运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
请输入笔试成绩:80
请输入机试成绩:90
计算机等级考试通过!
程序结束
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入笔试成绩:50
请输入机试成绩:90
计算机等级考试没通过!
程序结束

6. Operador lógico o

Puede utilizar el operador o para juzgar múltiples condiciones. Siempre que se cumpla una de las múltiples condiciones, se ejecuta el bloque de declaración después de if.

Por ejemplo:

java_score = float(input("请java语言考试成绩:"))
python_score = float(input("请python语言考试成绩:"))
go_score = float(input("请go语言考试成绩:"))
if java_score >= 60 or python_score >= 60 or go_score >= 60:
    print("计算机等级考试通过!")
else:
    print("计算机等级考试没通过!")
print("程序结束")
    
运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
请java语言考试成绩:50
请python语言考试成绩:0
请go语言考试成绩:0
计算机等级考试没通过!
程序结束
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请java语言考试成绩:88
请python语言考试成绩:0
请go语言考试成绩:0
计算机等级考试通过!
程序结束

7. Anidamiento de declaraciones if...else

La forma anidada de las declaraciones if...else es la siguiente:

if 表达式1:
    if 表达式2: 
        语句块1
    else:
        语句块2
else:
    if 表达式3: 
        语句块3
    else:
        语句块4

Por ejemplo:

num = float(input("请输入一个数:"))
if num >= 0:
    if num > 0:
        print(num,"是一个正数。")
    else:
        print(num,"是0。")
else:
    print(num,"是一个负数。")
        
运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
请输入一个数:0
0.00>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入一个数:12.5
12.5 是一个正数。
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入一个数:-2
-2.0 是一个负数。

El código anterior se puede escribir de la siguiente forma:

num = float(input("请输入一个数:"))
if num > 0:
    print(num,"是一个正数。")
else:
    if num < 0:
        print(num,"是一个负数。")
    else:
        print("输入的数是0。")
        
运行结果如下:
===================== RESTART: C:\Python\Python38\First.py =====================
请输入一个数:1.2
1.2 是一个正数。
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入一个数:-2.58
-2.58 是一个负数。
>>> 
===================== RESTART: C:\Python\Python38\First.py =====================
请输入一个数:0
输入的数是0

Supongo que te gusta

Origin blog.csdn.net/weixin_44377973/article/details/132194109
Recomendado
Clasificación