Volver al curso

Python Desde Cero

leccion
3 / 21
beginner
20 horas
Fundamentos de Python

Variables y Asignacion

Lectura
40 min~7 min lectura

Variables y Asignacion

Que es una variable?

Una variable es un espacio en la memoria de tu computadora donde guardas informacion. Piensa en una variable como una caja etiquetada donde puedes guardar cosas. Cada caja tiene un nombre unico (la etiqueta) y puede contener diferente tipo de contenido. Cuando necesitas usar esa informacion, simplemente llamas a la caja por su nombre y Python te devolvera lo que hay dentro.

Las variables son fundamentales en programacion porque te permiten almacenar datos y trabajar con ellos de manera dinamica. En lugar de escribir valores directamente en tu codigo, puedes guardarlos en variables y modificarlos segun sea necesario. Esto hace tu codigo mas flexible, legible y facil de mantener.

En Python, crear una variable es muy sencillo. Solo necesitas escribir el nombre que le quieres dar, seguido del simbolo igual (=), y luego el valor que quieres guardar. A esto se le llama asignar un valor a una variable. El simbolo igual en programacion no significa "es igual a" como en matematicas, sino "asignar el valor de la derecha a la variable de la izquierda".

Nombrando variables en Python

Python tiene reglas especificas para nombrar variables. El nombre debe comenzar con una letra (a-z, A-Z) o un guion bajo (_). No puede comenzar con un numero. Despues del primer caracter, puedes usar letras, numeros o guiones bajos. Python distingue entre mayusculas y minusculas, lo que significa que edad, Edad y EDAD son tres variables diferentes.

Existen convenciones (reglas no obligatorias pero recomendadas) para nombrar variables. En Python, la convencion mas comun es usar snake_case: todas las letras minusculas separadas por guiones bajos. Por ejemplo: nombre_completo, edad_usuario, precio_producto. Esto hace que tus nombres de variables sean mas legibles.

Tambien hay palabras reservadas que no puedes usar como nombres de variables porque Python las usa para su propia sintaxis. Estas incluyen: if, else, for, while, def, class, import, return, y muchas otras. Si intentas usar una de estas palabras como nombre de variable, Python te daran un error.

Asignando valores

Vamos a ver algunos ejemplos de como asignar valores a variables:

nombre = "Maria"
edad = 28
altura = 1.65
es_estudiante = True

En estos ejemplos, hemos creado cuatro variables diferentes. La variable nombre guarda un string (texto), edad guarda un numero entero (integer), altura guarda un numero decimal (float), y es_estudiante guarda un valor booleano (True o False). Python automaticamente detecta que tipo de dato estas guardando, lo cual es una de las ventajas de este lenguaje.

Puedes cambiar el valor de una variable en cualquier momento:

x = 5
print(x) # Imprime 5
x = 10
print(x) # Imprime 10

Python simplemente sobrescribe el valor anterior con el nuevo. No necesitas "declarar" el tipo de variable por adelantado como en otros lenguajes de programacion.

Tipos de datos basicos

Python tiene varios tipos de datos basicos que debes conocer:

Enteros (int): Son numeros sin parte decimal. Ejemplos: 5, -10, 100, 0.

Flotantes (float): Son numeros con parte decimal. Ejemplos: 3.14, -2.5, 100.0.

Strings (str): Son texto. Ejemplos: "Hola", 'Mundo', "123".

Booleanos (bool): Solo pueden tener dos valores: True (verdadero) o False (falso).

Para saber que tipo de dato tiene una variable, puedes usar la funcion type():

x = 5
print(type(x)) # Imprime <class 'int'>

y = "Hola"
print(type(y)) # Imprime <class 'str'>

Entender los tipos de datos es crucial porque determina que operaciones puedes realizar con ellos. No puedes, por ejemplo, sumar texto con numeros directamente.

Multiples asignaciones

Python te permite asignar valores a multiples variables en una sola linea:

x, y, z = 1, 2, 3

Esto crea tres variables (x, y, z) con los valores 1, 2, y 3 respectivamente. Tambien puedes asignar el mismo valor a multiples variables:

x = y = z = 0

Esto es util cuando quieres inicializar varias variables con el mismo valor inicial. Sin embargo, debes tener cuidado porque esta forma de asignar crea referencias al mismo objeto, lo cual puede causar problemas con tipos de datos mutables (listas, diccionarios), aunque para tipos simples como numeros y strings no hay problema.

Variables y operaciones

Una de las ventajas de usar variables es que puedes realizar operaciones con ellas:

a = 10
b = 5
suma = a + b
resta = a - b
multiplicacion = a * b
division = a / b

print(suma) # 15
print(resta) # 5
print(multiplicacion) # 50
print(division) # 2.0

Las variables guardan el resultado de las operaciones, permitiendote reutilizar esos valores mas adelante. Tambien puedes usar el resultado de una operacion directamente en otra operacion.

Input: Obteniendo datos del usuario

Ahora vamos a aprender como obtener datos del usuario. La funcion input() pause el programa y espera a que el usuario escriba algo y presione Enter. Lo que el usuario escriba se guarda como un string:

nombre = input("Como te llamas? ")
print("Hola,", nombre)

Cuando ejecutes este programa, veras el mensaje "Como te llamas? " y el cursor parpadeara esperando tu respuesta. Cuando escribas tu nombre y presiones Enter, el programa continuara y te saludara.

Es importante saber que input() siempre devuelve un string, incluso si el usuario escribe numeros. Si necesitas trabajar con numeros, tendras que convertir el string a numero usando int() o float().

edad = input("Cuantos años tienes? ")
edad = int(edad) # Convertir string a entero
print("El proximo año tendras", edad + 1)

Ejercicios practicos con variables

Vamos a crear un programa simple que use variables y input. Haremos una calculadora de indice de masa corporal (IMC):

Programa calculador de IMC

peso = float(input("Ingresa tu peso en kg: "))
altura = float(input("Ingresa tu altura en metros: "))

imc = peso / (altura * altura)

print("Tu indice de masa corporal es:", imc)

Este ejemplo muestra varias cosas importantes: convertimos la entrada del usuario a float (numero decimal) porque input() devuelve strings, y realizamos un calculo matematico usando las variables.

Otro ejercicio interesante es un convertidor de temperaturas:

Convertidor de Celsius a Fahrenheit

celsius = float(input("Temperatura en Celsius: "))
fahrenheit = (celsius * 9/5) + 32

print(celsius, "grados Celsius son", fahrenheit, "grados Fahrenheit")

Convenciones de nombres

Vamos a profundizar en las convenciones de nomenclatura. Como mencionamos, la convencion en Python es snake_case para variables y funciones: todas las letras minusculas con guiones bajos separando palabras. Pero hay mas convenciones que deberias conocer:

  • PascalCase: Cada palabra comienza con mayuscula (Usado para nombres de clases en Python)
  • UPPER_SNAKE_CASE: Todo mayuscula con guiones bajos (Usado para constantes)
  • snake_case: Todo minuscula con guiones bajos (Usado para variables y funciones)

Ejemplos:

Constantes (no cambian su valor)

PI = 3.14159
MAXIMO_INTENTOS = 3

Variables

nombre_usuario = "Pedro"
contador_items = 0

Funciones (las vimos mas adelante)

def calcular_area():
pass

Seguir estas convenciones hace que tu codigo sea mas facil de leer para otros desarrolladores y para ti mismo cuando vuelvas a revisar tu codigo despues de un tiempo.

Errores comunes con variables

Vamos a identificar y corregir errores comunes:

Error 1: Usar una variable sin definirla

print(mensaje) # NameError: name 'mensaje' is not defined

Solucion: Define la variable antes de usarla.

Error 2: Usar numeros como strings accidentalmente

numero = "10"
resultado = numero + 5 # TypeError: can only concatenate str (not "int") to str

Solucion: Convierte a numero si necesitas hacer operaciones matematicas.

Error 3: Olvidar que Python distingue mayusculas de minusculas

Nombre = "Carlos"
nombre = "Ana"
print(Nombre) # Imprime Carlos
print(nombre) # Imprime Ana

💡 Concepto Clave

Revisemos los puntos más importantes de esta lección antes de continuar.

Resumen

  • Las variables almacenan datos que pueden usarse y modificarse
  • Los nombres de variables deben seguir reglas especificas
  • Python infiere automaticamente el tipo de dato
  • Los tipos basicos son: int, float, str, bool
  • input() permite obtener datos del usuario
  • La funcion type() muestra el tipo de una variable
  • Seguir convenciones de nomenclatura hace el codigo mas legible

En la proxima leccion, aprenderemos mas sobre los diferentes tipos de datos en Python y las operaciones que podemos realizar con cada uno.

🧠 Pon a prueba tu conocimiento
¿Cuál es el aspecto más importante que aprendiste en esta lección?
  • Comprendo el concepto principal y puedo explicarlo con mis palabras
  • Entiendo cómo aplicarlo en mi situación específica
  • Necesito repasar algunas partes antes de continuar
  • Quiero ver más ejemplos prácticos del tema
✅ ¡Excelente! Continúa con la siguiente lección para profundizar más.