Python » Fundamentos de Python » Trabajar con variables en Python

Trabajar con variables en Python

En Python tenemos distintos tipos de datos numéricos como int y float que nos permiten trabajar con números. Pero lo realmente útil y práctico al programar, es poder dar un nombre a estos u otros tipos de datos de modo que podamos reutilizarlos en distintas partes de nuestro código. Esta asignación de nombre se realiza mediante el signo igual (=). Entonces, en el siguiente ejemplo decimos que la variable mis_camisetas es igual a 5.

>>> mis_camisetas = 5
>>> mis_camisetas
5

Además, en todo momento podemos cambiar el valor de una variable. Siguiendo con el ejemplo anterior, si me compro dos camisetas nuevas puedo asignar el nuevo valor 7 a la variable mis_camisetas.

>>> mis_camisetas = 5
>>> mis_camisetas = 7
>>> mis_camisetas
7

Python también admite la asignación en cadena de un mismo valor a distintas variables.

>>> mis_camisetas = mis_camisas = mis_pantalones = 5
>>> mis_camisetas
5
>>> mis_camisas
5
>>> mis_pantalones
5

Reglas para escoger los nombres de las variables

Los nombres que escogemos para nuestras variables tienen que seguir ciertas reglas tales como:

  • Pueden tener cualquier longitud.
>>> EstaVariableTieneUnNombreMuyLargoQueContieneMuchosCaracteres = 60
  • Sólo pueden contener letras mayúsculas y minúsculas (A-Z, a-z), digitos (0-9), y el guión bajo (_).
>>> Mi_variable_1 = 1
  • No pueden empezar por un número.
>>> 1_Mi_variable = 1
  File "<stdin>", line 1
    1_Mi_variable = 1
     ^
SyntaxError: invalid token
  • No se pueden usar las palabras reservadas del lenguaje ya que sino el intérprete nos da un error de sintaxis. Estas palabras reservadas son las siguientes:
FalseNoneTrueandasassertasync
awaitbreakclasscontinuedefdelelif
elseexceptfinallyforfromglobalif
importinislambdanonlocalnotor
passraisereturntrywhilewithyield

También hay ciertas recomendaciones que aunque no generen ningún error por parte del intérprete podemos seguir para mejorar la calidad de nuestro código.

  • Usar nombres significativos. Mejor llamar a una variable numero_de_piezas que n. De este modo será más fácil que otra persona se familiarice con nuestro código, o incluso que a nosotros mismos nos cueste menos recordar que hace el código al cabo de mucho tiempo.
  • Evitar el uso de ciertos nombres de tipos de datos proporcionados por Python como por ejemplo: int, float, list, tuple, dict, etc.

Tipado dinámico y función type

Python es un lenguaje de programación de tipado dinámico. Esto significa que a una variable le podemos reasignar distintos tipos de datos. La ventaja de esta característica es que lo convierte en un lenguaje de programación muy flexible. Por contra, hay que estar atento a qué tipo de dato tienen las distintas variables de nuestro código ya que sino podemos tener errores al ejecutar el programa. Para facilitar dicha tarea Python proporciona la función type() que nos indica el tipo de dato de la variable que deseamos evaluar.

>>> mi_temperatura = 36.7
>>> type(mi_temperatura)
<class 'float'>

Identidad de un objeto

Otro concepto en Python es la identidad de los objetos, la cual podemos obtener usando la función id(). Esta identidad es un número entero único y constante que identifica un objeto durante su tiempo de vida en memoria. Para entenderlo mejor, decimos que dos variables distintas tienen la misma identidad si apuntan al mismo objeto en memoria.

>>> participantes = 20
>>> competidores = participantes
>>> id(participantes)
4483524304
>>> id(competidores)
4483524304
>>> competidores = 18
>>> id(competidores)
4483524240

En el ejemplo anterior las variables participantes y competidores comparten inicialmente la misma identidad. Esto nos indica es que en memoria sólo existe una copia del objeto “20”. Sin embargo al cambiar el valor de la variable competidores hacemos que esta apunte a un objeto distinto en memoria.

Foto del autor

Albert Brugués

Soy doctor en informática médica y un apasionado de la tecnología y las nuevas oportunidades que brinda. Más en particular me encanta la inteligencia artificial y el desarrollo web. En este blog pretendo compartir los conocimientos de Python que he ido adquiriendo a lo largo de los años.

Deja un comentario