Resumen de la sintaxis de Python — Elegir entre control de flujo y funciones

Un repaso de la sintaxis de Python (control de flujo y funciones). Conecta de forma transversal las ramificaciones condicionales, los bucles, el manejo de excepciones y las aplicaciones de funciones en un mapa claro.

La sintaxis de Python es el conjunto de herramientas para conectar el comportamiento

En Fundamentos de Python aprendiste los tipos que contienen tus datos: int / str / list / dict. La serie de Sintaxis de Python es la siguiente capa: el conjunto de herramientas para hacer fluir el comportamiento sobre esos datos.

Todo lo de esta serie se puede agrupar en cuatro tareas: ramificar según condiciones, repetir trabajo, capturar fallos y agrupar lógica para reutilizarla.

Cuatro pilares que hacen mover los datos
Tipos de datosint / str / list ...Excepcionestry / exceptRamificaciónif / elif / elseBuclesfor / whileFuncionesdef / lambdaseleccionaiteraagrupa
Apilados sobre los tipos de datos, los cuatro pilares —ramificación / bucles / funciones / excepciones— son los que convierten valores crudos en lógica real.

Control de flujo — Ramificación, bucles y excepciones

Tres familias para tener a mano: la familia if para seleccionar comportamiento, la familia de bucles para recorrer elementos y la familia de excepciones para sobrevivir a fallos.

CategoríaSintaxis / FunciónUso típico
Ramificaciónif / elif / elseElegir una rama según un valor o estado
Ramificaciónall() / any()Comprobar en bloque si todos o algunos elementos cumplen una condición
Buclesfor + range / enumerate / zipRecorrer una colección elemento por elemento
BucleswhileRepetir mientras se cumpla una condición (cuidado con los bucles infinitos)
BuclesComprensiones de listasCombinar for + filtro + transformación en una sola línea
Expresión de asignaciónOperador morsa :=Asignar y comprobar en una línea (reduce duplicación en while / if)
Excepcionestry / except / finallyCapturar errores en tiempo de ejecución y limpiar
Lanzarraise / clases de excepción personalizadasLanzar tú mismo una excepción cuando se rompen las suposiciones

Funciones — El conjunto de herramientas para reutilizar

Definir una función con def es sencillo, pero las funciones de Python también traen un conjunto de herramientas avanzadas —pasar funciones como valores, definir funciones dentro de funciones y decorarlas— que es lo que hace que el código Python sea reutilizable y mantenible.

Cuatro ramas de aplicaciones de funciones
def(básicos)*args**kwargsTrampa dearg mutableFunc internaClosureyieldGeneradorOrden superiorpasar funcslambdafunc anónima@decoratorcapa adicionalmap()aplicar en bloqueargscuidadoscopeperezosocomo valoracortardecoraraplicar
Alrededor de def en el centro, el conjunto de herramientas se ramifica en cuatro direcciones: argumentos flexibles (args/kwargs), manipulación del scope (closures, nonlocal), evaluación perezosa (generadores) y decoración (de orden superior, decoradores, lambda, map).
CategoríaSintaxis / FunciónUso típico
Definicióndef / returnDar un nombre a un fragmento de lógica para poder reutilizarlo
Argumentos*args / **kwargs y múltiples retornosAceptar cualquier cantidad de argumentos / desempaquetar en el sitio de llamada
CuidadoTrampa del argumento mutableLos args list / dict se comparten con quien llama. Usa None como valor predeterminado
ScopeFunciones internas y closures — global / nonlocalConstruir una función que recuerde (o reescriba) valores externos
Eval. perezosaFunciones generadoras yieldProducir una secuencia enorme un elemento a la vez, ahorrando memoria
Funciones como valoresFunciones de orden superiorTomar o devolver funciones como argumentos / valores de retorno
Funciones como valoresExpresiones lambdaFunciones anónimas de una línea
Funciones como valoresmap()Aplicar una función a cada elemento de una lista de una vez
DecoraciónDecoradores @Añadir logging, medición de tiempos o caching a funciones existentes

Lo que viene — Agrupar datos y comportamiento con class

A continuación, Programación orientada a objetos en Python te muestra cómo usar class para agrupar datos (atributos) y comportamiento (métodos) en un único objeto: eso es la programación orientada a objetos.

El panorama general del aprendizaje de Python
FundamentosElige un tipoSintaxisConectar comportamientoPOODatos + comportamiento← estás aquísiguientese basa ense basa en
Pila de arriba abajo: Fundamentos → Sintaxis → POO. Esta serie cubrió la capa intermedia (Sintaxis). Lo siguiente es la capa inferior (POO).
QUIZ

Verificación de conocimientos

Responde cada pregunta una a una.

Pregunta 1¿Qué bucle es el mejor cuando el final está determinado por una cantidad fija de elementos?

Pregunta 2¿Cuál es la forma más concisa de comprobar si todos los elementos de nums son positivos?

Pregunta 3¿Cuál encaja mejor para añadir lógica común como logging o medición de tiempos a funciones existentes?