I. Introducción
1. Una breve introducción a la estructura de control.
Las estructuras de control son declaraciones en un lenguaje de programación que controlan el flujo de ejecución del programa. Se dividen en dos categorías principales:
- Declaraciones condicionales :
if
Declaración: Ejecute un bloque de código según las condiciones.elif
Declaración: Si la condición anterior no se cumple, pruebe esta condición.else
Declaración: este bloque de código se ejecuta si no se cumplen todas las condiciones.
- declaración de bucle :
for
Bucle: itera a través de cada elemento de la secuencia.while
Bucles: repite un bloque de código siempre que una condición sea verdadera.
2. La importancia de las estructuras de control en la programación
La importancia de las estructuras de control en la programación es que permiten que un programa ejecute bloques de código específicos en función de diferentes condiciones o de forma repetida. Esto permite a los programas tomar decisiones, realizar tareas repetitivas y gestionar procesos complejos para implementar una variedad de funciones y algoritmos.
- Capacidad de toma de decisiones : A través de declaraciones condicionales (como if, elif, else), el programa puede ejecutar diferentes rutas de código de acuerdo con diferentes condiciones, realizando así la función de toma de decisiones.
- Ejecución repetida : las declaraciones de bucle (como for, while) permiten que el programa ejecute repetidamente bloques de código, lo cual es crucial para manejar tareas repetitivas, atravesar estructuras de datos y otros escenarios.
- Gestión de procesos : la estructura de control puede gestionar eficazmente el proceso de ejecución del programa, de modo que el programa pueda ejecutarse en una secuencia lógica, mejorando la legibilidad y mantenibilidad del código.
- Implementación de algoritmos : la estructura de control es la base para la implementación del algoritmo. Los algoritmos como la clasificación, la búsqueda y la programación dinámica son inseparables del soporte de declaraciones condicionales y declaraciones de bucle.
- Flexibilidad y escalabilidad : el uso racional de estructuras de control puede hacer que el programa sea más flexible y escalable, capaz de adaptarse a diferentes entradas y escenarios, y mejorar la versatilidad del programa.
En resumen, las estructuras de control son un componente central de los lenguajes de programación y dominarlas es crucial para escribir programas lógicamente complejos y ricos en funciones.
2. Declaraciones condicionales
1. Uso básico de la declaración if
En Python, if
las declaraciones se utilizan para ejecutar bloques de código según condiciones. El siguiente es if
el uso básico de las declaraciones:
-
if
Declaración condicional única :if condition: # 如果条件为真,则执行这里的代码 print("条件为真,执行此代码块。")
-
Múltiples
if
declaraciones condicionales :if condition1: # 如果条件1为真,则执行这里的代码 print("条件1为真,执行此代码块。") elif condition2: # 如果条件1不为真,但条件2为真,则执行这里的代码 print("条件1不为真,条件2为真,执行此代码块。") else: # 如果条件1和条件2都不为真,则执行这里的代码 print("条件1和条件2都不为真,执行此代码块。")
-
if
Bloque de código en declaración :if
Dos puntos ( ) después de una declaración:
marcan el comienzo de un bloque de código.- Los bloques de código deben tener sangría (normalmente 4 espacios o 1 tabulación).
- La sangría correcta es clave para controlar estructuras en Python.
-
Precauciones :
- Las expresiones condicionales deben estar entre paréntesis, especialmente en el caso de múltiples condiciones.
- No olvide
if
agregar dos puntos después de la declaración. - Asegúrese de que sus bloques de código tengan la sangría correcta.
-
Ejemplo :
age = 20 if age >= 18: print("您已成年。") else: print("您还未成年。")
En este ejemplo, si age
la variable es mayor o igual a 18, imprima "Usted es adulto."; de lo contrario, imprima "Aún no es menor de edad". Recuerde, if
el propósito básico de una declaración es decidir si se ejecuta un bloque de código específico en función del resultado de una evaluación condicional.
2. Uso de la cláusula else
En Python, else
las cláusulas se if
utilizan a menudo junto con declaraciones para proporcionar if
rutas de ejecución alternativas cuando no se cumple una condición. Estos son else
los usos básicos de las cláusulas:
-
Cláusulas
if
después de declaraciones simpleselse
:if condition: # 如果条件为真,则执行这里的代码 else: # 如果条件不为真,则执行这里的代码 print("条件不为真,执行此代码块。")
-
elif
Cláusulas yelse
cláusulas :if condition1: # 如果条件1为真,则执行这里的代码 elif condition2: # 如果条件1不为真,但条件2为真,则执行这里的代码 else: # 如果条件1和条件2都不为真,则执行这里的代码 print("条件1和条件2都不为真,执行此代码块。")
-
else
Cláusula ANDfor
owhile
Bucle :for item in collection: # 循环体代码 else: # 当循环正常完成时执行,即循环体未被`break`语句打断时执行 print("循环体已全部执行完毕。")
Al utilizar else
cláusulas, debe prestar atención a los siguientes puntos:
else
Las cláusulas debenif
usarse con y después de laif
declaración.else
Los bloques de código dentro de las cláusulas deben tener el mismo nivel de sangría para mantener clara la estructura del código.- Dentro de
elif
una cláusula, todaselif
y cada una de las correspondienteselse
deben tener el mismo nivel de sangría. - En un bucle
for
or , la cláusula se ejecuta al final normal del bucle, es decir, cuando el cuerpo del bucle no es interrumpido por una declaración. Por ejemplo:while
else
break
x = 10
if x > 0:
print("x 是正数")
else:
print("x 不是正数")
En este ejemplo, si x
es mayor que 0, imprima "x es un número positivo"; de lo contrario, imprima "x no es un número positivo".
3. Uso de la cláusula elif
En Python, elif
la cláusula (abreviatura de else if) se utiliza para if
proporcionar comprobaciones de condiciones adicionales cuando no se cumple la condición de la declaración. elif
Las cláusulas se utilizan a menudo para implementar lógica de rama multicondicional. Estos son elif
los usos básicos de las cláusulas:
-
if-elif-else
estructura :if condition1: # 如果条件1为真,则执行这里的代码 elif condition2: # 如果条件1不为真,但条件2为真,则执行这里的代码 else: # 如果条件1和条件2都不为真,则执行这里的代码 print("条件1和条件2都不为真,执行此代码块。")
-
elif
Orden de cláusulas :elif
Las cláusulas deben ordenarse de más probable a menos probable.- Esto permite que el programa encuentre cláusulas que cumplan la condición más rápidamente
elif
y las ejecute.
-
Precauciones :
- Cada uno
elif
y el correspondienteelse
deben tener el mismo nivel de sangría. - Si no se cumple la primera
if
condición, Python verificará la primeraelif
condición y ejecutará el bloque de código correspondiente si se cumple. - Si no se cumplen todas las condiciones
if
AND , se ejecuta la cláusula (si la hubiera).elif
else
- Cada uno
-
Ejemplo :
grade = 'B' if grade == 'A': print("优秀!") elif grade == 'B': print("良好。") elif grade == 'C': print("及格。") else: print("加油,再努力!")
En este ejemplo, dependiendo del grade
valor de la variable, el programa imprime diferentes mensajes. Si grade
es 'A', imprima "¡Excelente!"; si es 'B', imprima "Bueno".; si es 'C', imprima "Aprobado". " ! ". elif
Las cláusulas son una forma común de implementar juicios condicionales complejos. Hacen que el código sea más claro y fácil de entender.
4. Declaraciones if anidadas
Las declaraciones anidadas if
se refieren al uso de otra declaración if
dentro de un bloque de declaraciones . Las declaraciones if
anidadas if
le permiten ejecutar diferentes rutas de código según múltiples condiciones. El siguiente es if
el uso básico de declaraciones anidadas:
if
Declaraciones anidadas :x = 10 if x > 0: print("x 是正数") if x < 100: print("x 是一个小于100的正数") else: print("x 不是正数")
En este ejemplo, primero verifique x
si es mayor que 0. Si es así, verifique más a fondo x
si es inferior a 100. 2. Notas :
- Asegúrese de que las
if
declaraciones internas tengan elif
mismo nivel de sangría que las declaraciones externas. - Cada
if
declaración anidada debe tener una condición explícita para evitar bucles infinitos.
- Ejemplo :
age = 21 if age >= 18: print("您已成年。") if age >= 21: print("您已超过法定饮酒年龄。") else: print("您还未达到法定饮酒年龄。") else: print("您还未成年。")
En este ejemplo, primero verifique age
si es mayor o igual a 18 y, de ser así, luego verifique si es mayor o igual a 21. Las declaraciones anidadas if
son muy útiles cuando se trata de lógica compleja, pero el uso excesivo o incorrecto puede generar código difícil de entender y mantener. Entonces, al escribir if
declaraciones anidadas, asegúrese de que su lógica sea clara y manténgala lo más concisa posible.
3. Operadores lógicos
1. Uso and
de operadores or
ynot
En Python, and
los operadores or
y not
se utilizan para operaciones lógicas. Se utilizan para combinar múltiples condiciones o negar una sola condición.
and
operador
and
El resultado del operador es verdadero si ambas condiciones son verdaderas .- De lo contrario, el resultado es falso.
condition1 = True
condition2 = False
result = condition1 and condition2
print(result) # 输出:False
or
operador
or
El resultado del operador es verdadero si al menos una de las dos condiciones es verdadera .- De lo contrario, el resultado es falso.
condition1 = True
condition2 = False
result = condition1 or condition2
print(result) # 输出:True
not
operador
- Negar una sola condición.
- Si la condición es verdadera,
not
el resultado del operador es falso. - De lo contrario, el resultado es verdadero.
condition = True
result = not condition
print(result) # 输出:False
Precauciones
- Los operandos de ambos lados de los operadores lógicos suelen ser valores booleanos.
- El orden de operación de los operadores lógicos es de izquierda a derecha.
- Los operadores lógicos se pueden utilizar con cualquier expresión booleana.
Ejemplo
# 组合使用 and、or 和 not 运算符
x = 10
y = 20
result = (x > 5) and (y > 10)
print(result) # 输出:False
result = (x > 5) or (y > 10)
print(result) # 输出:True
result = not (x == y)
print(result) # 输出:True
Estos operadores son muy útiles al escribir declaraciones condicionales y pueden ayudarle a generar juicios lógicos complejos. El uso adecuado de operadores lógicos puede mejorar la claridad y legibilidad de su código.
2. Aplicación en declaraciones condicionales
Los operadores lógicos se utilizan ampliamente en declaraciones condicionales y le permiten combinar múltiples condiciones para tomar decisiones más complejas. En Python, los principales operadores lógicos incluyen and
y or
.not
and
operador
and
Los operadores se utilizan para comprobar si dos o más condiciones son verdaderas al mismo tiempo.- Dentro de
if
una declaración, puedeand
combinar múltiples condiciones usando.
x = 10
y = 20
if x > 5 and y > 10:
print("x 和 y 都大于它们的阈值。")
En este ejemplo, el bloque de código solo se ejecutará si x
es mayor que 5 y y
mayor que 10.
or
operador
or
Los operadores se utilizan para comprobar si al menos una de dos o más condiciones es verdadera.- Dentro de
if
una declaración, puedeor
proporcionar una condición alternativa usando .
x = 10
y = 5
if x > 5 or y > 10:
print("x 或 y 至少有一个大于它们的阈值。")
En este ejemplo, x
si es mayor que 5 o y
mayor que 10, se ejecutará el bloque de código.
not
operador
not
El operador se utiliza para negar una sola condición.- Dentro de
if
una declaración, puede utilizarnot
para invertir la lógica de una condición.
x = 5
if not (x > 10):
print("x 不大于10。")
En este ejemplo, not
el operador se utiliza para verificar x
si no es mayor que 10. Si x
no es mayor que 10, se ejecutará el bloque de código.
Precauciones
- Cuando utilice operadores lógicos, tenga cuidado de mantener el código legible y utilice espacios y nuevas líneas de forma adecuada.
- Los operandos de ambos lados de un operador lógico deben ser del mismo tipo de datos, normalmente booleanos.
- Cuando utilice varios operadores lógicos en combinación, preste atención a la prioridad de la operación,
and
que tiene una prioridad más alta queor
. Al utilizar operadores lógicos racionalmente, las declaraciones condicionales pueden volverse más precisas y poderosas, y pueden manejar juicios lógicos más complejos.
4. Estructura de bucle
1. for
Uso básico de bucles
En Python, for
un bucle es una declaración de iteración que atraviesa una secuencia (como una lista, tupla, cadena) o cualquier objeto iterable. Estos son for
los conceptos básicos del uso de bucles:
-
for
Bucle básico :for item in iterable: # 遍历iterable中的每个item print(item)
-
for
Variables de iteración en bucles :- Las variables de iteración suelen tener un nombre
item
, pero puede utilizar cualquier nombre de variable válido. - En cada iteración,
item
se asignaiterable
el siguiente elemento .
- Las variables de iteración suelen tener un nombre
-
for
Bloque de código en bucle :- Los bloques de código deben tener sangría (normalmente 4 espacios o 1 tabulación).
- La sangría correcta es clave para controlar estructuras en Python.
-
Ejemplo :
# 遍历列表中的每个元素 fruits = ["apple", "banana", "cherry"] for fruit in fruits: print(fruit)
En este ejemplo, for
el bucle itera sobre fruits
cada elemento de la lista y lo imprime. 5. Cláusulas for
en el bucleelse
:
for
Los bucles también pueden contener unaelse
cláusula opcional que se ejecuta en cada iteración del bucle externo sin serbreak
interrumpido por una declaración.else
La cláusula se utiliza normalmente para realizar trabajos de limpieza o algún código cuando el ciclo se completa normalmente.
for item in iterable:
# 循环体代码
else:
# 当循环正常完成时执行
print("循环体已全部执行完毕。")
for
Los bucles son una característica muy poderosa de Python y se usan ampliamente en escenarios como el procesamiento de datos y las operaciones de archivos. Los bucles for
le permiten iterar y manipular fácilmente cada elemento en una secuencia.
2. while
Uso básico de bucles
En Python, while
un bucle es una estructura cíclica que ejecuta repetidamente un bloque de código en función de una condición específica. Estos son while
los conceptos básicos del uso de bucles:
-
while
Bucle básico :while condition: # 当condition为真时,重复执行这里的代码 print("条件为真,继续循环。")
-
La estructura básica de un bucle :
while
La palabra clave marca el comienzo del ciclo.- Las expresiones condicionales deben estar entre paréntesis.
- Los bloques de código deben tener sangría (normalmente 4 espacios o 1 tabulación).
-
Juicio condicional :
- El ciclo continuará hasta que la condición ya no sea cierta.
- La condición suele ser una expresión booleana que determina si el bucle continúa ejecutándose.
-
Ejemplo :
count = 0 while count < 5: print(count) count += 1
En este ejemplo, while
el bucle se repite hasta que count
la variable alcanza el valor 5. 5. Notas :
- Evite bucles infinitos y asegúrese de que la condición eventualmente se vuelva falsa.
- Sangra los bloques de código correctamente para mantener tu código legible.
while
Los bucles son una herramienta importante para implementar tareas repetitivas y comprobar continuamente las condiciones. A menudo se utiliza para manejar situaciones que requieren múltiples iteraciones hasta que se cumpla una determinada condición. El uso adecuadowhile
de los bucles puede mejorar la eficiencia y la capacidad de mantenimiento de su programa.
5. Declaraciones de control de bucle
1. break
Uso de declaraciones
En Python, break
se utiliza una declaración para salir inmediatamente de la estructura de bucle en la que se encuentra actualmente, ya sea for
un bucle o while
un bucle. El siguiente es break
el uso básico de las declaraciones:
for
Usado en un buclebreak
:for item in iterable: if item == "special": break # 退出for循环 print(item)
En este ejemplo, si la declaración en el bucle item
es igual a "especial", break
hará que el bucle termine inmediatamente. 2. Usar en buclewhile
break
:
count = 0
while count < 5:
print(count)
count += 1
if count == 3:
break # 退出while循环
En este ejemplo, cuando count
es igual a 3, break
la declaración hará que while
el ciclo finalice inmediatamente. 3. Notas :
break
Una declaración sólo se puede utilizar en el nivel de bucle en el que se encuentra.- Una vez que se ejecuta la declaración
break
, la estructura del bucle finalizará inmediatamente y el código restante en el cuerpo del bucle ya no se ejecutará. - Al usarlo
break
, debes asegurarte de que el bucle finalmente termine para evitar crear un bucle infinito.break
Las declaraciones son una de las formas clave de controlar la ejecución del bucle, lo que le permite salir del bucle antes de tiempo cuando se cumplen ciertas condiciones, evitando así iteraciones innecesarias. El uso correctobreak
puede hacer que su código sea más eficiente y flexible.
2. continue
Uso de declaraciones
En Python, continue
la declaración se usa para omitir el código restante del ciclo actual e iniciar la siguiente iteración. Cuando continue
se ejecuta la declaración, la iteración del bucle actual termina inmediatamente, el flujo de control del programa vuelve al principio del bucle, se comprueba la condición del bucle y, si la condición es verdadera, comienza la siguiente iteración. El siguiente es continue
el uso básico de las declaraciones:
for
Usado en un buclecontinue
:for item in iterable: if item == "special": continue # 跳过当前迭代,继续下一次迭代 print(item)
En este ejemplo, si item
es igual a "especial" en el bucle, continue
la declaración hará que la iteración actual termine inmediatamente y comience la siguiente iteración. 2. Usar en buclewhile
continue
:
count = 0
while count < 5:
count += 1
if count == 3:
continue # 跳过当前迭代,继续下一次迭代
print(count)
En este ejemplo, cuando count
es igual a 3, continue
la declaración hará que la iteración actual termine inmediatamente y comience la siguiente iteración. 3. Notas :
continue
Una declaración sólo se puede utilizar en el nivel de bucle en el que se encuentra.- Cuando se utiliza
continue
, debes asegurarte de que no haga que el bucle termine prematuramente, a menos que este sea el efecto deseado. continue
Las declaraciones se utilizan normalmente para omitir iteraciones innecesarias o para realizar acciones dentro de un bucle bajo ciertas condiciones.continue
Las declaraciones son otra forma de controlar la ejecución del bucle, lo que le permite omitir la iteración actual cuando se cumplen ciertas condiciones, mejorando así la eficiencia y precisión del bucle. El uso adecuadocontinue
puede hacer que su código sea más flexible y más fácil de mantener.
3. Uso de declaración de pase
En Python, pass
una declaración es una operación no operativa que no realiza ninguna acción y normalmente se usa como marcador de posición o para mantener la integridad de la estructura del código. Úselo cuando su código requiera una declaración, pero no desee que realice ninguna acción real pass
. El siguiente es pass
el uso básico de las declaraciones:
-
pass
Declaración básica :pass # 这是一个空操作,不执行任何操作
-
Uso en la definición de función
pass
:def example_function(): pass # 函数中使用pass作为占位符
En este ejemplo, example_function
es una función vacía, que no contiene ningún código real. 3. Uso en la definición de clasepass
:
class ExampleClass:
pass # 类中使用pass作为占位符
En este ejemplo, ExampleClass
es una clase vacía, que no define ninguna propiedad ni método. 4. Notas :
pass
Las declaraciones se utilizan a menudo para mantener intacta la estructura de su código, especialmente cuando se espera una declaración pero no desea realizar ninguna acción.- Usarlo como marcador de posición en una función o clase
pass
garantiza que su código siga las reglas de sintaxis de Python, incluso si la función o clase no implementa ninguna funcionalidad por el momento.pass
Aunque la declaración no es operativa, en algunos casos es necesario mantener el código claro y coherente. El uso correctopass
puede hacer que el código sea más limpio y facilitar el mantenimiento y la expansión futuros del código.
6. Ejercicios y ejemplos
Preguntas de práctica sobre declaraciones condicionales y estructuras de bucle.
- Juicio de edad : escriba un programa para juzgar si una persona puede votar según la edad ingresada (suponiendo que la edad para votar sea 18 años).
age = int(input("请输入年龄:"))
if age >= 18:
print("可以投票。")
else:
print("还未到投票年龄。")
- Imprimir un triángulo : use
for
un bucle para imprimir un triángulo rectángulo.
for i in range(1, 6):
for j in range(1, i + 1):
print("*", end=" ")
print()
- Juego de adivinanzas de números : escribe un juego de adivinanzas de números. El programa genera aleatoriamente un número entero entre 1 y 100. El jugador tiene 10 oportunidades de adivinar el número.
import random
secret_number = random.randint(1, 100)
for attempt in range(10):
guess = int(input("请猜一个1到100之间的整数:"))
if guess < secret_number:
print("太小了!")
elif guess > secret_number:
print("太大了!")
else:
print(f"恭喜你,猜对了!秘密数字是 {secret_number}。")
break
if attempt == 9:
print("你没有足够的尝试次数来猜出数字。")
Ejemplos de resolución de problemas del mundo real
Pregunta 1: Calcular el impuesto sobre la renta personal
Supongamos que el impuesto sobre la renta personal se calcula de la siguiente manera:
- Si su ingreso mensual es menor o igual a 5.000 yuanes, no necesita pagar el impuesto sobre la renta personal.
- Si el ingreso mensual está entre 5.000 y 15.000 yuanes, la tasa impositiva es del 5%.
- Si los ingresos mensuales están entre 15.000 y 30.000 yuanes, el tipo impositivo es del 10%.
- Si los ingresos mensuales superan los 30.000 yuanes, la tasa impositiva es del 20%.
income = float(input("请输入您的月收入:"))
if income <= 5000:
tax = 0
elif income <= 15000:
tax = income * 0.05
elif income <= 30000:
tax = income * 0.10
else:
tax = income * 0.20
print(f"您的个人所得税为:{tax:.2f}元。")
Pregunta 2: Calcula la suma de todos los números pares entre 1 y 100
sum_even = 0
for i in range(1, 101):
if i % 2 == 0:
sum_even += i
print(f"1到100之间所有偶数的和是:{sum_even}")
Linus tomó el asunto en sus propias manos para evitar que los desarrolladores del kernel reemplacen las pestañas con espacios. Su padre es uno de los pocos líderes que puede escribir código, su segundo hijo es el director del departamento de tecnología de código abierto y su hijo menor es un núcleo. Colaborador de código abierto Huawei: tomó 1 año convertir 5000 aplicaciones móviles de uso común Migración completa a Hongmeng Java es el lenguaje más propenso a vulnerabilidades de terceros Wang Chenglu, el padre de Hongmeng: el código abierto Hongmeng es la única innovación arquitectónica. En el campo del software básico en China, Ma Huateng y Zhou Hongyi se dan la mano para "eliminar rencores". Ex desarrollador de Microsoft: el rendimiento de Windows 11 es "ridículamente malo " " Aunque lo que Laoxiangji es de código abierto no es el código, las razones detrás de él. Son muy conmovedores. Meta Llama 3 se lanza oficialmente. Google anuncia una reestructuración a gran escala.Este artículo es una reimpresión del artículo Heng Xiaopai y los derechos de autor pertenecen al autor original. Se recomienda visitar el texto original. Para reimprimir este artículo, comuníquese con el autor original.