Aprende Tipos, Variables y Operadores en Python como Nunca te lo Han Explicado

 ¡Hola futuro Pythonista! Si quieres aprender Python, ya sea por dinero o por vocación, has llegado al lugar correcto. Este tutorial te guiará a través de los conceptos fundamentales de una manera clara y directa. Si logras entender esto, estás en el camino correcto. ¡Empecemos!

1. Los Tipos de Datos Básicos

En Python, todo son datos. Estos son los 4 tipos más básicos:

🔤 String (str) - Texto

Representa cadenas de texto. Se define entre comillas simples o dobles.

python
"¡Hola BitBoss!"
'Python es genial'

🔢 Integer (int) - Números enteros

Números sin decimales.

python
42
-7
0

📊 Float (float) - Números con decimales

Números racionales en notación de punto flotante.

python
3.14
-0.001
2.0

✅ Boolean (bool) - Valores lógicos

Solo tiene dos valores posibles: True o False.

python
True
False

2. Mostrando datos con print()

La función print() muestra información por consola:

python
print("¡Hola BitBoss!")  # Imprime un string
print(42)                # Imprime un entero
print(3.14)              # Imprime un float
print(True)              # Imprime un booleano

Puedes imprimir múltiples valores separados por comas:

python
print("El valor es:", 42, "y el tipo es:", type(42))

3. Comentarios

Los comentarios se escriben después del símbolo # y Python los ignora:

python
# Esto es un comentario
print("Hola")  # Esto también es un comentario

4. Descubriendo tipos con type()

La función type() te muestra el tipo de dato:

python
print(type("Hola"))      # <class 'str'>
print(type(42))          # <class 'int'>
print(type(3.14))        # <class 'float'>
print(type(True))        # <class 'bool'>

5. Variables: Contenedores de datos

Las variables son como cajas donde guardas datos:

python
# Sintaxis: nombre_variable = valor
mensaje = "¡Hola BitBoss!"
numero = 42
pi = 3.14
es_valido = True

print(mensaje)  # Imprime: ¡Hola BitBoss!

Reglas para nombrar variables:

  • No pueden empezar con números

  • Pueden contener letras, números y guiones bajos

  • Son sensibles a mayúsculas/minúsculas

  • No pueden ser palabras reservadas de Python

python
# Ejemplos válidos:
variable1 = "válido"
variable_2 = "también válido"
Variable3 = "diferente a variable3"

# Ejemplos inválidos:
# 1variable = "inválido"  # Error: no puede empezar con número
# if = "inválido"         # Error: if es palabra reservada

6. Operadores Aritméticos

Realizan operaciones matemáticas básicas:

python
a = 10
b = 3

print(a + b)   # Suma: 13
print(a - b)   # Resta: 7
print(a * b)   # Multiplicación: 30
print(a / b)   # División: 3.333...
print(a ** b)  # Potencia: 1000 (10 elevado a 3)
print(a // b)  # División entera: 3
print(a % b)   # Módulo (resto de división): 1

Orden de operaciones:

Python sigue las reglas matemáticas convencionales (PEMDAS):

  • Paréntesis

  • Exponentes

  • Multiplicación y División

  • Suma y Resta

python
resultado = 10 + 5 * 2   # 20, no 30
resultado = (10 + 5) * 2 # 30

7. Operadores Relacionales

Comparan valores y devuelven True o False:

python
a = 5
b = 3

print(a > b)   # Mayor que: True
print(a < b)   # Menor que: False
print(a >= b)  # Mayor o igual que: True
print(a <= b)  # Menor o igual que: False
print(a == b)  # Igual que: False
print(a != b)  # Distinto que: True

8. Operadores Lógicos

Trabajan con valores booleanos:

python
# Negación (not)
print(not True)    # False
print(not False)   # True

# Disyunción (or) - Devuelve True si al menos un valor es True
print(True or True)    # True
print(True or False)   # True
print(False or False)  # False

# Conjunción (and) - Devuelve True solo si ambos valores son True
print(True and True)    # True
print(True and False)   # False
print(False and False)  # False

9. Orden de precedencia de operadores

  1. Paréntesis

  2. Operadores aritméticos

  3. Operadores relacionales

  4. Operadores lógicos

python
resultado = 5 + 3 * 2 == 11 and not False
# Primero: 3*2=6
# Segundo: 5+6=11
# Tercero: 11==11 → True
# Cuarto: not False → True
# Quinto: True and True → True
print(resultado)  # True

10. Ejemplo Práctico: Calculando notas

Veamos cómo aplicar estos conceptos en un ejemplo real:

python
# Calcular si una nota es notable (entre 7 y 9)
nota1 = 8
nota2 = 7
nota3 = 9

# Calcular media aritmética
media = (nota1 + nota2 + nota3) / 3

print("Tu nota media es:", media)

# Verificar si es notable
es_notable = media >= 7 and media < 9

print("¿Tienes un notable?", es_notable)

Conclusión

¡Felicidades! Has aprendido los fundamentos de Python:

  • Los 4 tipos de datos básicos

  • Cómo mostrar información con print()

  • Cómo usar variables como contenedores

  • Operadores aritméticos, relacionales y lógicos

Estos conceptos son la base de todo lo que harás en Python. Con ellos podrás almacenar datos, realizar operaciones y tomar decisiones en tus programas.

¿Listo para el siguiente paso? ¡Sigue practicando y pronto dominarás Python!

¡Recuerda suscribirte para más tutoriales y no procrastines!


Variable Libre (Free Variable)

¿Qué es? Una variable que se usa en una función pero NO está definida dentro de ella (ni como parámetro ni dentro del cuerpo).

Analogía: Imagina que eres un chef en una cocina. Los ingredientes que traes de tu casa (pertenecen al exterior) son variables libres. Los que te dan en la cocina (parámetros) no lo son.

python
# ingrediente_externo es variable libre
ingrediente_externo = "sal"

def cocinar(ingrediente_parametro):
    resultado = ingrediente_parametro + " con " + ingrediente_externo
    return resultado
# ingrediente_externo es libre porque no está definida en la función

🏢 Variable de Clase (Class Variable)

¿Qué es? Una variable que pertenece a la clase, no a instancias individuales. Todas las instancias comparten la misma variable.

Analogía: En una empresa, el nombre de la compañía es una variable de clase. Todos los empleados comparten el mismo nombre de empresa.

python
class Empleado:
    # Variable de clase - compartida por todos
    nombre_empresa = "TechCorp"
    
    def __init__(self, nombre):
        self.nombre = nombre  # Variable de instancia

# Todos comparten la misma empresa
empleado1 = Empleado("Ana")
empleado2 = Empleado("Juan")
print(empleado1.nombre_empresa)  # "TechCorp"
print(empleado2.nombre_empresa)  # "TechCorp"

🌍 Variable de Contexto (Context Variable)

¿Qué es? Variables que existen en el ámbito donde se define una función. El "contexto" en el que la función fue creada.

Analogía: Tu idioma nativo es el contexto. Dondequiera que vayas, llevas ese contexto contigo.

python
def crear_saludador(idioma):
    # 'idioma' es una variable de contexto para la función interior
    def saludar(nombre):
        if idioma == "español":
            return f"Hola {nombre}!"
        else:
            return f"Hello {nombre}!"
    return saludar

# El contexto (idioma="español") se queda "recordado"
saludar_espanol = crear_saludador("español")
print(saludar_espanol("Carlos"))  # "Hola Carlos!"

🔐 Variable de Cierre (Closure Variable)

¿Qué es? Es específicamente la variable de contexto que una función interior "captura" y recuerda, incluso después de que la función exterior haya terminado.

Analogía: Una cápsula del tiempo que guarda un momento específico. La función lleva consigo esa cápsula dondequiera que vaya.

python
def contador_fabricante():
    cuenta = 0  # Esta variable se convierte en closure
    
    def incrementar():
        nonlocal cuenta  # ¡Se convierte en closure!
        cuenta += 1
        return cuenta
    
    return incrementar

mi_contador = contador_fabricante()
print(mi_contador())  # 1
print(mi_contador())  # 2
print(mi_contador())  # 3
# 'cuenta' sigue viva aunque contador_fabricante() ya terminó

🔍 Resumen de Diferencias

Tipo¿Dónde vive?¿Se comparte?Analogía
LibreFuera de la funciónNoIngredientes de casa
ClaseEn la claseSí entre instanciasNombre de empresa
ContextoFunción exteriorNoIdioma nativo
CierreCapturada por funciónPersiste despuésCápsula del tiempo

Key insight: Una variable de cierre ES una variable de contexto, pero con el superpoder de persistir después de que su función original haya terminado.

Comentarios

Entradas populares de este blog

¿Qué es un Closure?

4 tipos de colecciones de datos más

Calculadora de edad