Contenidos
- Defining Functions
- Positional Parameter Passing
- Returning Values
- Way of the Programmer: Decoding a Function
- A Function that Accumulates
- Type Hinting
- Local and Global Variables
- Function Composition
- Mutable Objects and Side Effects
- Test Cases for Functions
- Way of the Programmer: Enforcing Variable Typing for Function Parameters
- Tuple Packing
- Tuple Assignment with Unpacking
Defining Functions
1 2 3 4 5 |
# Definiendo una función simple def saludo(nombre): return f"Hola, {nombre}!" print(saludo("Mundo")) |
Positional Parameter Passing
1 2 3 4 5 |
# Pasando parámetros posicionales def sumar(a, b): return a + b print(sumar(5, 3)) # Salida: 8 |
Returning Values
1 2 3 4 5 6 |
# Devolviendo valores de una función def multiplicar(a, b): return a * b resultado = multiplicar(4, 7) print(resultado) # Salida: 28 |
Way of the Programmer: Decoding a Function
1 2 3 4 5 6 7 |
# Decodificando una función def calcular_area_rectangulo(base, altura): area = base * altura return area area = calcular_area_rectangulo(5, 10) print(f"Área del rectángulo: {area}") |
A Function that Accumulates
1 2 3 4 5 6 7 8 |
# Función que acumula def acumulador(lista): total = 0 for num in lista: total += num return total print(acumulador([1, 2, 3, 4, 5])) # Salida: 15 |
Type Hinting
1 2 3 4 5 |
# Indicando tipos en funciones def dividir(a: float, b: float) -> float: return a / b print(dividir(10.0, 2.0)) # Salida: 5.0 |
Local and Global Variables
1 2 3 4 5 6 7 8 9 |
# Variables locales y globales x = "global" def mi_funcion(): x = "local" print(x) mi_funcion() # Salida: local print(x) # Salida: global |
Function Composition
1 2 3 4 5 6 7 8 9 |
# Composición de funciones def sumar(a, b): return a + b def multiplicar(a, b): return a * b resultado = sumar(multiplicar(2, 3), 5) print(resultado) # Salida: 11 |
Mutable Objects and Side Effects
1 2 3 4 5 6 7 |
# Objetos mutables y efectos secundarios def agregar_elemento(lista, elemento): lista.append(elemento) mi_lista = [1, 2, 3] agregar_elemento(mi_lista, 4) print(mi_lista) # Salida: [1, 2, 3, 4] |
Test Cases for Functions
1 2 3 4 5 6 7 |
# Casos de prueba para funciones def es_par(num): return num % 2 == 0 assert es_par(4) == True assert es_par(3) == False print("Todos los casos de prueba pasaron") |
Way of the Programmer: Enforcing Variable Typing for Function Parameters
1 2 3 4 5 |
# Forzando el tipo de variables en los parámetros de función def suma(a: int, b: int) -> int: return a + b print(suma(3, 4)) # Salida: 7 |
Tuple Packing
1 2 3 |
# Empaquetado de tuplas tupla = 1, 2, 3 print(tupla) # Salida: (1, 2, 3) |
Tuple Assignment with Unpacking
1 2 3 4 5 |
# Asignación de tuplas con desempaquetado a, b, c = tupla print(a) # Salida: 1 print(b) # Salida: 2 print(c) # Salida: 3 |