Ejercicios prácticos de declaraciones de bucle de Python y explicación detallada del anidamiento de bucles

declaración de bucle

Una declaración de bucle hace que un bloque de código específico se ejecute una cantidad específica de veces. En Python, las declaraciones de bucle comunes incluyen bucles while y for.

mientras bucle

La sintaxis básica de un bucle while es la siguiente:

while 条件表达式:
    代码块
else:
    代码块

Proceso de implementación:

  1. La expresión condicional después de ejecutar mientras, si el resultado es Verdadero, se ejecuta el cuerpo del bucle (bloque de código);
  2. Una vez ejecutado el cuerpo del bucle, se vuelve a juzgar la expresión condicional;
  3. Si la expresión condicional sigue siendo Verdadera, el cuerpo del bucle continúa ejecutándose, y así sucesivamente, hasta que la expresión condicional sea Falsa;
  4. Si el bucle tiene una instrucción else correspondiente, se ejecuta el bloque de código después de la otra.

Código de muestra:

Aquí hay un código de muestra que usa un bucle while para imprimir números:

i = 0
while i < 10:
    i += 1
    print(i, "hello")
else:
    print("else中的代码块")

En el ejemplo anterior, primero inicializamos la variable ia 0 y luego i < 10controlamos la ejecución del bucle usándola como expresión condicional. En el cuerpo del bucle, incrementamos ie imprimimos el valor actual y "hola". Cuando ise alcanza 10, la expresión condicional se vuelve Falsa y el ciclo termina. Finalmente, dado que el bucle tiene una instrucción else correspondiente, se ejecutará el bloque de código en else y se imprimirá el "bloque de código en else".

Los bucles pueden ser flexibles según la expresión condicional. Al controlar la expresión condicional y el código en el cuerpo del bucle, puede implementar varias lógicas de bucle. Al escribir un bucle, asegúrese de prestar atención a las condiciones de terminación del bucle para evitar un bucle infinito. Al mismo tiempo, el uso de las características de los bucles puede simplificar las operaciones repetidas y mejorar la eficiencia del código.

Ejercicios practicos

Ejercicio 1: Encuentra la suma de todos los números impares hasta 100

Código de muestra:

# 初始化变量sum,用于存储奇数之和
sum = 0

# 使用循环遍历100以内的所有数
for i in range(1, 101):
    # 判断当前数是否为奇数
    if i % 2 != 0:
        # 是奇数,则累加到sum中
        sum += i

print("100以内所有的奇数之和为:", sum)

Ejercicio 2: Encuentra la suma y el número de todos los múltiplos de 7 hasta 100

Código de muestra:

# 初始化变量sum和count,用于存储倍数之和和个数
sum = 0
count = 0

# 使用循环遍历100以内的所有数
for i in range(1, 101):
    # 判断当前数是否为7的倍数
    if i % 7 == 0:
        # 是7的倍数,则累加到sum中,并增加count的值
        sum += i
        count += 1

print("100以内所有的7的倍数之和为:", sum)
print("100以内所有的7的倍数个数为:", count)

Ejercicio 3: Encuentra el número de todos los narcisos dentro de 1000

El número de narciso se refiere a un número de n dígitos (n≥3), la suma de la enésima potencia de los dígitos en cada dígito es igual a sí mismo (por ejemplo: 1 3 + 5 3 + 3**3 = 153).

Encuentre el número de todos los narcisos dentro de 1000.
Código de muestra:

# 使用循环遍历1000以内的所有数
for num in range(100, 1000):
    # 获取百位、十位、个位数字
    hundreds_digit = num // 100
    tens_digit = (num // 10) % 10
    ones_digit = num % 10
    
    # 判断当前数是否为水仙花数
    if num == hundreds_digit ** 3 + tens_digit ** 3 + ones_digit ** 3:
        print(num)

Ejercicio 4: Obtenga cualquier número ingresado por el usuario y determine si es un número primo

# 获取用户输入的数字
num = int(input("请输入一个数字:"))

# 定义变量is_prime,用于判断是否为质数,默认为True
is_prime = True

# 判断是否为质数
if num > 1:
    for i in range(2, num):
        if num % i == 0:
            is_prime = False
            break
else:
    is_prime = False

# 输出结果
if is_prime:
    print(num, "是质数")
else:
    print(num, "不是质数")

Bucles anidados

Ejercicio 1: Imprime la tabla de multiplicar del 99

# 使用两层循环实现乘法表的打印
for i in range(1, 10):  # 控制行数
    for j in range(1, i + 1):  # 控制列数
        print(j, "*", i, "=", i * j, end=" ")
    print()

Ejercicio 2: Encuentra todos los números primos hasta 100

# 初始化变量count,用于计数质数的个数
count = 0

# 使用循环遍历100以内的所有数
for num in range(2, 101):
    # 判断是否为质数
    is_prime = True
    for i in range(2, int(num ** 0.5) + 1):
        if num % i == 0:
            is_prime = False
            break

    # 如果是质数,则打印输出并增加计数器的值
    if is_prime:
        print(num, end=" ")
        count += 1

# 输出质数的个数
print("\n100以内所有的质数个数为:", count)

Minijuego "Tang Monk contra Bone Demon"

1、身份选择
    ① 显示提示信息
        欢迎光临 xxx 游戏!
        请选择你的身份:
            1.xxx
            2.xxx
        请选择:x
    ② 根据用户选择来分配身份(显示不同的提示消息)  
        1.---
        2.---
        3.---  

2、游戏进行
    ① 显示玩家的基本信息(攻击力 生命值)
    ② 显示玩家可以进行的操作:
        1、练级
            - 提升玩家的攻击力和生命值
        2、打BOSS
            - 玩家对BOSS进行攻击,玩家要攻击BOSS,BOSS对玩家进行反击
            - 计算BOSS是否被玩家消灭,玩家是否被BOSS消灭
            - 游戏结束
        3、逃跑
            - 退出游戏,显示提示信息,游戏结束!

Código de muestra:

import random

# 显示身份选择提示信息
print("欢迎光临《唐僧大战白骨精》游戏!")
print("请选择你的身份:")
print("1. 唐僧")
print("2. 白骨精")

# 获取用户选择的身份
choice = input("请选择(输入数字序号):")

if choice == "1":
    # 唐僧身份
    print("你选择了唐僧身份,祝你成功取经!")
    
    # 初始化玩家的攻击力和生命值
    player_attack = 10
    player_hp = 100
    
    while True:
        # 显示玩家的基本信息
        print("【玩家信息】")
        print("攻击力:", player_attack)
        print("生命值:", player_hp)
        
        # 显示玩家可以进行的操作
        print("请选择你要进行的操作:")
        print("1. 练级")
        print("2. 打BOSS")
        print("3. 逃跑")
        
        # 获取用户选择的操作
        choice = input("请选择(输入数字序号):")
        
        if choice == "1":
            # 练级操作,提升玩家的攻击力和生命值
            player_attack += 5
            player_hp += 20
            print("恭喜你,成功练级!")
        elif choice == "2":
            # 打BOSS操作
            boss_attack = random.randint(10, 30)
            boss_hp = random.randint(100, 200)
            
            print("【BOSS信息】")
            print("攻击力:", boss_attack)
            print("生命值:", boss_hp)
            print("战斗开始!")
            
            while True:
                # 玩家攻击BOSS
                boss_hp -= player_attack
                print("你对BOSS造成了", player_attack, "点伤害")
                
                # 判断是否击败BOSS
                if boss_hp <= 0:
                    print("恭喜你,成功击败BOSS!")
                    break
                
                # BOSS反击玩家
                player_hp -= boss_attack
                print("BOSS对你造成了", boss_attack, "点伤害")
                
                # 判断是否被BOSS消灭
                if player_hp <= 0:
                    print("很遗憾,你被BOSS消灭了!")
                    break
        elif choice == "3":
            # 逃跑操作,退出游戏
            print("你选择了逃跑,游戏结束!")
            break
        else:
            print("无效操作,请重新选择!")

elif choice == "2":
    # 白骨精身份
    print("你选择了白骨精身份,准备吃唐僧肉!")
    
    # 初始化玩家的攻击力和生命值
    player_attack = 20
    player_hp = 80
    
    while True:
        # 显示玩家的基本信息
        print("【玩家信息】")
        print("攻击力:", player_attack)
        print("生命值:", player_hp)
        
        # 显示玩家可以进行的操作
        print("请选择你要进行的操作:")
        print("1. 练级")
        print("2. 打唐僧")
        print("3. 逃跑")
        
        # 获取用户选择的操作
        choice = input("请选择(输入数字序号):")
        
        if choice == "1":
            # 练级操作,提升玩家的攻击力和生命值
            player_attack += 10
            player_hp += 10
            print("恭喜你,成功练级!")
        elif choice == "2":
            # 打唐僧操作
            tangseng_attack = random.randint(5, 15)
            tangseng_hp = random.randint(50, 150)
            
            print("【唐僧信息】")
            print("攻击力:", tangseng_attack)
            print("生命值:", tangseng_hp)
            print("战斗开始!")
            
            while True:
                # 玩家攻击唐僧
                tangseng_hp -= player_attack
                print("你对唐僧造成了", player_attack, "点伤害")
                
                # 判断是否击败唐僧
                if tangseng_hp <= 0:
                    print("恭喜你,成功吃到了唐僧肉!")
                    break
                
                # 唐僧反击玩家
                player_hp -= tangseng_attack
                print("唐僧对你造成了", tangseng_attack, "点伤害")
                
                # 判断是否被唐僧消灭
                if player_hp <= 0:
                    print("很遗憾,你被唐僧打败了!")
                    break
        elif choice == "3":
            # 逃跑操作,退出游戏
            print("你选择了逃跑,游戏结束!")
            break
        else:
            print("无效操作,请重新选择!")

else:
    print("无效选择,游戏结束!")

Resumir

Una declaración de bucle es una estructura de control importante en la programación que permite ejecutar un bloque de código específico varias veces. En Python, las declaraciones de bucle comunes incluyen bucles while y for.

mientras bucle

  • La sintaxis básica del bucle while es:

    while 条件表达式:
        代码块
    else:
        代码块
    
  • Proceso de implementación:

    1. La expresión condicional después de ejecutar mientras, si el resultado es Verdadero, se ejecuta el cuerpo del bucle (bloque de código);
    2. Una vez ejecutado el cuerpo del bucle, se vuelve a juzgar la expresión condicional;
    3. Si la expresión condicional sigue siendo Verdadera, el cuerpo del bucle continúa ejecutándose, y así sucesivamente, hasta que la expresión condicional sea Falsa;
    4. Si el bucle tiene una instrucción else correspondiente, se ejecuta el bloque de código después de la otra.
  • Notas sobre el bucle:

    • Evite bucles infinitos: asegúrese de que haya código dentro del bucle que pueda cambiar la expresión condicional; de lo contrario, caerá en un bucle infinito.
    • Expresiones de inicialización y actualización: debe inicializar las variables fuera del bucle y actualizar las variables dentro del cuerpo del bucle para controlar la ejecución del bucle.
    • Utilice la declaración break: puede utilizar la declaración break dentro del ciclo para finalizar el ciclo antes de tiempo.
  • Código de muestra:

    i = 0
    while i < 10:
        i += 1
        print(i, "hello")
    else:
        print("else中的代码块")
    

    En el ejemplo anterior, usamos un bucle while para imprimir los números del 1 al 10 y generar "hola" después de cada número. Cuando i llega a 10, la expresión condicional i < 10 es False y el ciclo termina. Finalmente, dado que el bucle tiene una instrucción else correspondiente, se ejecutará el bloque de código en else.

  • La flexibilidad del bucle while: se puede realizar una lógica de bucle diferente controlando la expresión condicional y el código en el cuerpo del bucle. El uso de las características de los bucles puede simplificar las operaciones repetidas y mejorar la eficiencia del código.

El bucle es una de las estructuras de control más utilizadas en la programación. Dominar el uso de declaraciones de bucle puede hacer que el código sea más flexible y eficiente. Pero también debemos prestar atención a las condiciones de terminación del bucle y evitar bucles infinitos para asegurar la correcta ejecución del programa.


recomendaciones de la columna de aprendizaje de Python

Conocimientos básicos de Python (0 introducción básica)

[Conocimientos básicos de Python] Función 0.print()
[Conocimientos básicos de Python] 1. Tipos de datos, aplicaciones de datos, conversión de datos
[Conocimientos básicos de Python] 2. Si juicio condicional y anidamiento de condiciones
[Conocimientos básicos de Python] 3. Funciones input()
[Conocimientos básicos de Python] 4. Listas y diccionarios
[Conocimientos básicos de Python] 5. Bucles For y while
[Conocimientos básicos de Python] 6. Valores booleanos y cuatro tipos de declaraciones (romper, continuar, pasar, de lo contrario)
[Conocimientos básicos de Python] 7. Operación práctica: use Python para implementar el juego "Word PK" (1)
[Conceptos básicos de Python] 7. Operación práctica: use Python para implementar el juego "Word PK" (2)
[Conceptos básicos de Python] 8. Pensamiento de programación: cómo Resolver problemas - Capítulo de pensamiento
[Conocimientos básicos de Python] 9. Definición y llamada de funciones
[Conocimientos básicos de Python] 10. Escribir programas con funciones - Capítulo práctico
[Conocimientos básicos de Python] 10 Uso de Python para implementar el juego de piedra, papel y tijera - Capítulo de operación de práctica de funciones
[Conceptos básicos de Python] 11. Cómo depurar - Razones de errores comunes e ideas para solucionar problemas - Capítulo de pensamiento
[Conceptos básicos de Python] 12. Clases y objetos (1)
[Python Conceptos básicos] 12. Clases y objetos (2)
[Conceptos básicos de Python] Conocimientos] 13. Clases y objetos (3)
[Conocimientos básicos de Python] 13. Clases y objetos (4)
[Conocimientos básicos de Python] 14. Creación de una gestión de biblioteca sistema (operación práctica de clases y objetos)
[Conocimientos básicos de Python] 15. Conocimientos básicos de codificación
[Conceptos básicos de Python] 16. Conceptos básicos y operaciones de lectura y escritura de archivos
[Conceptos básicos de Python] 16. Implementación de Python de "Preguntas sobre escritura de poesía antigua" (lectura, escritura y codificación de archivos - artículos prácticos)
[Conceptos básicos de Python] 17. El concepto de módulos y Cómo presentar
[conceptos básicos de Python] 18. Operación práctica: uso de Python para enviar automáticamente correos electrónicos masivos
[conceptos básicos de Python] 19. Pensamiento del producto y uso de diagramas de flujo: pensamiento
[conceptos básicos de Python] 20. Implementación de Python de "qué comer en el almuerzo" " (Pensamiento de producto - Operación práctica)
[Conocimientos básicos de Python] 21. La forma correcta de abrir de manera eficiente y perezosa - Graduación
[procesamiento de archivos Python] Lectura, procesamiento y escritura de archivos CSV
[procesamiento de archivos Python] Procesamiento automático de Excel (usando openpyxl )
[procesamiento de archivos Python] -procesamiento de formato Excel

Supongo que te gusta

Origin blog.csdn.net/qq_41308872/article/details/132732131
Recomendado
Clasificación