En el contexto de la programación, se puede decir que una variable es un contenedor de información. Información o dato que puede ser utilizado y manipulado durante la ejecución de un programa.
Para definir una variable no se requiere de palabras clave, cuando queramos definir una, bastará con escribir su nombre, seguido de el signo de igualdad que se conoce como asignación, pues le estamos asignando un valor a la variable, y finalmente el valor que recibirá; por ejemplo:
country = "China"
PythonCon esto hemos definido nuestra variable llamada country
, que contiene como valor el string
«China». Este valor se almacenará durante la ejecución del programa, podrá ser utilizado una o múltiples veces, luego la memoria se reciclará y el dato se borrará.
Sin embargo, el valor que contiene esta variable durante la ejecución del programa se puede modificar, pudiendo decir que ahora esta variable será igual a «Belice».
Python es un lenguaje de tipado dinámico, por lo que no es necesario especificar el tipo de datos que contendrá la variable al declararla, y que su tipo de dato se determinará en tiempo de ejecución. Es decir que el intérprete de Python infiere el tipo de dato según el valor asignado a la variable.
En otras palabras, aunque la variable country
en este momento contiene un string
, podemos modificar su valor asignándole ahora un int
:
country = 100
PythonUn float
country = 4_134.9
PythonUn bool
country = False
PythonUn None
country = None
PythonHasta el resultado de una operación
country = 5 * 2
PythonEntonces, el tipo de datos de la variable cambiará de acuerdo a su contenido, de manera dinámica.
Constantes
En Python no existen las constantes, es decir, no hay forma de forzar la inmutabilidad de un valor. Sin embargo, existe una convención en la cual se determina que las variables deben ser escritas en minúsculas, y las constantes, que si bien no existen como tal, se escribirán en mayúsculas sostenida. Así:
PI = 3.141516
PythonPero esto no impide que podamos alterar su valor después 😓 de haberlas declarado. Así que ejecutar lo siguiente es absolutamente valido.
PI = 3.14
PythonType hinting o type annotation
Aunque Python no te obliga a especificar los tipos de datos, desde la versión 3.5 de este lenguaje de programación se introdujo la capacidad de añadir estas anotaciones para ayudar a que el código sea más legible y facilitar el desarrollo.
Las anotaciones de tipos permiten indicar qué tipo de dato se espera que tenga una variable o el tipo de valor que una función debería retornar, lo que puede ser útil para herramientas como linters o sistemas de verificación de tipos como mypy.
Para hacer una anotación de tipo de datos, basta con colocar :
seguido del tipo de datos que se espera contenga la variable, por ejemplo:
name: str = "Saul"
age: int = 24
height: float = 186.5
married: bool = false
PythonSi bien, esto no evita que a futuro podamos asignar un valor de tipo str
a la edad, sí nos ayuda a darle mayor claridad a nuestro código, a encontrar errores de asignación y en la ejecución de pruebas.