Python ‐ Variables - DavSeb21031990/plan-estudio-python-go GitHub Wiki
Definición
Imagina una variable como una caja con una etiqueta. Dentro de esa caja, puedes guardar cualquier tipo de información: un número, un texto, una lista de cosas, etc. La etiqueta es el nombre que le das a la caja (la variable), y es la forma en que Python sabe qué información estás intentando usar.
Funcionamiento
Python es un lenguaje de tipado dinámico y fuerte. Esto significa dos cosas importantes con respecto a las variables:
- Tipado Dinámico: No necesitas decirle a Python qué tipo de dato vas a guardar en una variable (si será un número entero, un texto, etc.). Python lo averigua automáticamente cuando le asignas un valor.
Además, puedes cambiar el tipo de dato que guarda una variable en cualquier momento:nombre = "Juan" # Python sabe que 'nombre' es un texto (string) cantidad = 10 # Python sabe que 'cantidad' es un número entero (integer)
x = 10 # x es un entero x = "Hola" # Ahora x es un texto
- Tipado Fuerte: Una vez que Python sabe el tipo de dato, no te permitirá hacer operaciones ilógicas con tipos diferentes sin una conversión explícita.
numero = 5 texto = "Hola" # print(numero + texto) # Esto daría un error, no puedes sumar un número y un texto directamente print(str(numero) + texto) # Aquí sí funciona porque convertimos el número a texto
Asignación de valores
Para asignar un valor a una variable, usas el signo de igual =
. Este signo se conoce como operador de asignación.
mi_variable = "Este es un valor"
precio_unitario = 25.50
es_activo = True
Valores como referencias
En Python, cuando asignas un valor a una variable, en realidad la variable no contiene directamente el valor, sino que referencia (apunta a) un objeto en la memoria que contiene ese valor.
a = [1, 2, 3] # 'a' apunta a la lista [1, 2, 3] en la memoria
b = a # 'b' también apunta a la misma lista que 'a'
b.append(4) # Modificamos la lista a través de 'b'
print(a) # Salida: [1, 2, 3, 4] -> 'a' también se ve afectada porque apuntan al mismo objeto
Si quisieras una copia independiente, tendrías que hacer una copia explícita (por ejemplo, b = a[:]
para listas).
Ejemplos
# Creando variables de diferentes tipos
nombre_usuario = "Alicia" # String (cadena de texto)
saldo_cuenta = 1500.75 # Float (número decimal)
edad = 28 # Integer (número entero)
es_premium = True # Boolean (verdadero/falso)
lista_compras = ["leche", "pan", "huevos"] # List (lista de elementos)
datos_personales = {"nombre": "Carlos", "ciudad": "Quito"} # Dictionary (diccionario clave-valor)
# Imprimiendo el valor de las variables
print("Nombre de usuario:", nombre_usuario)
print("Saldo disponible:", saldo_cuenta)
print("Edad:", edad)
print("Es usuario premium:", es_premium)
print("Primer item en la lista de compras:", lista_compras[0])
print("Ciudad de Carlos:", datos_personales["ciudad"])
# Reasignando un valor
saldo_cuenta = saldo_cuenta - 200
print("Nuevo saldo:", saldo_cuenta)
# Asignación múltiple
x, y, z = 10, 20, 30
print(f"Valores: x={x}, y={y}, z={z}")