Módulos Personalizados

Los módulos en Python son simplemente archivos con una extensión .py que contienen definiciones y sentencias de Python. Los módulos pueden definir funciones, clases y variables. Nos permiten organizar y reutilizar código de una manera ordenada y eficiente.

Imagina que tenemos un archivo llamado math_operations.py con algunas funciones matemáticas simples. Podría verse así:

# math_operations.py

def add(x, y):
    return x + y        # Devuelve la suma de x e y

def subtract(x, y):
    return x - y        # Devuelve la diferencia de x e y

def multiply(x, y):
    return x * y        # Devuelve el producto de x e y

def divide(x, y):
    if y != 0:          # Comprueba si y no es cero
        return x / y    # Devuelve el cociente de x e y
    else:
        return 'Division by zero is not allowed'

En otro archivo (por ejemplo, main.py), podemos usar estas funciones importando el módulo math_operations:

import math_operations                 # Importa el módulo personalizado

print(math_operations.add(2, 3))       # Llama a la función 'add' del módulo y imprime 5
print(math_operations.subtract(7, 1))  # Llama a la función 'subtract' del módulo y imprime 6
print(math_operations.multiply(4, 5))  # Llama a la función 'multiply' del módulo y imprime 20
print(math_operations.divide(8, 2))    # Llama a la función 'divide' del módulo y imprime 4

O podemos usar la sintaxis from ... import .... Esto puede hacer que tu código sea más limpio porque elimina la necesidad de usar el nombre del módulo o un alias como prefijo:

from math_operations import add, subtract

print(add(2, 3))       # Llama directamente a la función 'add' y imprime 5
print(subtract(7, 1))  # Llama directamente a la función 'subtract' y imprime 6

Crear y utilizar módulos personalizados ayuda a que tu código sea más legible y manejable, especialmente para proyectos grandes.

Desafío: Conversión de Temperatura

Eres un pasante en una agencia meteorológica y te han asignado desarrollar un programa para ayudar a meteorólogos de todo el mundo a convertir temperaturas fácilmente. Tu tarea es crear un módulo de Python llamado temperature que contenga dos funciones: celsius2fahrenheit() y fahrenheit2celsius().

celsius2fahrenheit() debe tomar una temperatura en Celsius como entrada y convertirla a Fahrenheit. fahrenheit2celsius() debe tomar una temperatura en Fahrenheit como entrada y convertirla a Celsius. Cada función debe devolver la temperatura convertida.

La entrada y salida son manejadas automáticamente por el módulo main.py.

Entrada

Salida

C 0

32.00

F 32

0.00

C 100

212.00

F 212

100.00

Nota: La fórmula para convertir Celsius a Fahrenheit es (°C × 9/5) + 32, y la fórmula para convertir Fahrenheit a Celsius es (°F - 32) × 5/9.

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue