Variables, constantes y operadores.
Una variable es un identificador de una posición o contenedor de la memoria RAM en la que se almacenan datos a los que se puede acceder mediante la referencia a la variable o nombre identificativo. En función del tipo de contenido que se almacene en esa posición de memoria hablaremos de tipos de variables (numéricas, alfanuméricas o booleanas).
A diferencia de otros lenguajes, Python no precisa que las variables sean declaradas previamente, sino que la identificación se realiza en el momento en que se la nombre y se le asigna un dato. Otra característica específica de Python es que diferencia la variable según se escriba (case sensitive): vVar1 es una variable y vvar1 es otra variables distinta.
Otras condiciones que se deben tener en cuenta a la hora de dar nombre (identificador) a una variable es que no se pueden usar las palabras reservadas del lenguaje Python, que son las siguientes:
and - as - assert - break - class - continue - def - del - elif - else - except - finally - for - from - global - if - import - in - is - lambda - nonlocal - not - or - pass - raise - return - try - while - with - yield - False - None - True
Las variables deben empezar por una letra, no por números, aunque los pueden contener. Lo que no pueden es contener caracteres que no sean alfanuméricos (a excepción del guion bajo, que se puede usar para unir dos palabras (var_prim)o una palabra y un número (var_1) ni espacios en blanco (var prim no es un nombre válido de variable, var_prim sí lo es).
Python no cuenta con constantes, pero por convención, las variables se escriben en minúsculas (ej. var1, var_1) y se reservan los nombres en mayúsculas para funcionar como constantes (ej. CONST1, CONST_1).
En consecuencia, la diferencia entre variables y constantes es, en Python, más funcional y de lógica de programación, que consustancial al lenguaje: una variable "contiene" (referencia a un contenedor RAM) datos (valores) que pueden cambiar; una constante, por el contrario, se mantendrá sin cambios a lo largo del algoritmo.
Para trabajar con las variables utilizamos los llamados operadores, en los que se diferencian tipos en función del tipo de variable. Así podemos hablar de operadores algebraicos o aritméticos, operadores alfanuméricos o de cadena, operadores booleanos y operadores de asignación.
Los operadores aritméticos son los siguientes:
- + Suma (a+b = c
- - Resta (a-b = d)
- * Multiplicación (a*b = e)
- / División (b/a = d.ddd)
- // División entera (b//a = d)
- % Resto (de la división entera) (b%a = e)
- ** Potenciación (a**2 = a*a= f) (1)
Los operadores de cadena (string) son:
- + Concatenación (literal) s1+s2 ("suma" ambas cadenas)
- s1*n Multiplicador. s1*3 -> s1s1s1 (repite la cadena n veces)
Los operadores booleanos siempre devuelven True (V) o False (F):
- > y >= Mayor (mayor o igual) que
- < y <= Menor (menor o igual) que
- and (Y lógico). a>b and b>c V si se cumplen ambas condiciones. F el resto.
- or (O lógico). a>b or b>c. V se se cumple al menos una condición. F si no se cumple ninguna de las dos.
- != Diferente a!=b.
- == Igual que
Por último tenemos los operadores de asignación siguientes:
- = Asignación (a = 3) (2)
- += Asignación e incremento (a +=1 -> a = a+1)
- -= Asignación y decremento (a -=1 -> a = a-1)
- *= Asignación y producto (a*=2 -> a = a * 2)
- /= Asignación y división (a/=2 -> a = a/2)
- %= Asignación y resto (de división entera) (a%=2 -> a = a%2)
Ejemplos de uso de variables y operadores:
# Operadores aritméticos3+4*(8-2)27
45/76.42857142857142945//767**24943%7145/76.42857142857142945//7645%732**242**382**4162**5322**1/21.024**2576576**1/2288.0576**(1/2)24.0#Operadores alfanuméricos (string)"Hola"'Hola'"Hola " + "Julio y Juan"'Hola Julio y Juan'3*"Hola-"'Hola-Hola-Hola-'"Hola-" * 3'Hola-Hola-Hola-'#Operadores booleanos>>> 7 > 9False>>> 7>5True>>> 7>=7True>>> 7>=6True>>> 7<5False>>> 7<8True>>> 7<=8True>>> 7==7True>>> 7<9 or 7<6True>>> 7<9 and 7<6False>>> 7<9 and 7<8True>>> 7!=5True>>> 7<9 | 7<6False>>> 7<9 & 7<8False# Operadores de asignación>>> x = 5>>> print(x)5>>> x +=1>>> print(x)6>>> x -=1>>> print(x)5>>> x *=2>>> print(x)10>>> x /=2>>> print(x)5.0>>> x %=2>>> print(x)1.0
NOTAS
(1) No existe símbolo operacional para la raíz, por lo que su cálculo debe realizarse a partir de la equivalencia conocida entre raiz y potenciación fraccional (24**2 permite calcular la raíz cuadrada de 24). En la lógica de los ejemplos de la entrada f**2 = a)
(2) Es importante tener presente que = es operador de asignación, no de equivalencia o igualdad, función que cumple el operador ==. La confusión puede venir dada por ser = operador de asignación y de igualdad en otros lenguajes como OOo Basic.
No hay comentarios:
Publicar un comentario
Comenta esta entrada