Logo Python Fundamentos de la programación (Python)

[M2] Identificadores, variables (tipos básicos), operadores y expresiones

En este módulo estudiaremos los identificadores (formas de nombrar a los elementos de Python), los tipos básicos de variables (elementos encargados de almacenar los datos que se utilizan en el programa) así como los diferentes operadores (símbolos que especifican el tipo de operación) y por último las expresiones (forma de plantear las operaciones en Python ).

Contenido

Identificadores

Un identificador, es un nombre, una forma de nombrar a los elementos de Python. En Python, un identificador debe cumplir los siguientes requisitos:

Para revisar cuáles son las palabras reservadas en Python, el lenguaje nos ofrece una forma de acceder a las mismas a través de código, para ello, se deberá crear un pequeño programa con las instrucciones siguientes:

import keyword
print(keyword.kwlist)

El resultado del código anterior es la lista de palabras reservadas en Python:

# ['False', 'None', 'True', 'and', 'as', 'assert',
# 'async', 'await', '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']

Además de respetar las reglas mencionadas arriba, es conviente observar las siguientes recomendaciones y convenciones.


Variables

Una variable es un elemento de un programa que permite almacenar un valor en un momento de la ejecución, y utilizarlo en un momento posterior. Cada variable tiene un nombre (su identificador) un tipo de datos y podemos darle algún valor inicial.

Si solo indicamos el nombre y el tipo de datos que contendrá una variable, decimos que la variable está declarada.
Si, además, tiene un valor inicial decimos que está definida.

En Python las variables no se declaran previamente, se crean directamente mediante una sentencia de asignación. Esto es así porque Python es un lenguaje de tipado dinámico, es decir, el tipo de variable se adapta dinámicamente al tipo de valor que se le asigna.

# Sintaxis: variable = valor
numero = 5
print(numero)        # Imprime 5
nombre = 'Laura'     # Los textos van entrecomillados
print(nombre)
presente = True
print(presente)
vacia = None
print(vacia)

Se pueden asignar valores a múltiples variables en una sola línea de código. En este caso, deberá haber el mismo número de argumentos en los lados izquierdo y derecho de la igualdad.

numero, nombre = 5, 'Laura'

También se puede asignar el mismo valor a diferentes variables al mismo tiempo:

# Asigna el valor 1 a las variables a, b y c
a = b = c = 1

Constantes en Python

En Python las constantes no existen. Para guardar un valor constante se utiliza una variable.

La convención para nombrar constantes se escribe todo el nombre en mayúsculas, de esta forma, aunque en realidad estemos trabajando con variables, quien esté trabajando con el programa, sabrá a simple vista que se trata de una constante y que no hay que reasignarle ningún valor.


Tipos de Datos

Booleanos

Es un tipo de dato que permite almacenar dos valores: True o False.
Un valor booleano (bool) también puede ser el resultado de evaluar una expresión.

# Definir tipos booleanos
cierto = True
falso = False
Numéricos

Los tipos numéricos en Python pueden ser enteros (int), con decimales (float) o complejos (complex). Estos últimos, compuestos por una parte real y una imaginaria, son muy utilizados en las telecomunicaciones y electrónica, ya que son muy útiles para describir las ondas electromagnéticas y la corriente eléctrica. También destaca su uso en destaca su uso en la mecánica cuántica.

Cadenas o Strings

Las cadenas en Python o strings (str), son un tipo de datos que permite almacenar secuencias de caracteres. Para crear un string es necesario incluir el texto entre comillas simples ' o dobles ".


Verificar el tipo de datos de una variable

Podemos verificar el tipo de datos de una variable usando la función type.

# Sintaxis: type(variable)
numero = 5
print(type(numero))     # Imprime 'int'
nombre = 'Laura'
print(type(nombre))     # Imprime 'str'

Conversión de Datos

Hay casos en los que necesitamos convertir de forma explícita un valor a un tipo específico.
Para ello, Python cuenta con varias funciones de conversión:

Convertir a entero int
pi = int(3.1415)
print(pi)              # Imprime 3
Convertir a Booleano

En Python un booleano es un subtipo de un número entero, donde 1 = True y 0 = False. Cualquier string no vacío también es interpretado como True, mientras que cualquier colección vacía es interpretada como False. Hablaremos de las colecciones en módulos posteriores.

Convertir a float

La función float() nos permite convertir números enteros en float.

x = 58
print(x)               # Imprime 58.0
Convertir a cadenas (strings)

Podemos convertir números en cadenas usando la función str(). Dado que Python es un lenguaje de tipado fuerte, si se desea utilizar cualquier método de cadena sobre una variable numérica, habrá que convertirla en primera instancia.


Operadores Básicos

Los operadores son símbolos que permiten realizar un tipo de operación entre dos operandos

Operador de asignación básico

Un operador de asignación permite asignar un valor a una variable. El operador de asignación básico en Python es el signo =. En el módulo sobre bucles, se hablará del resto.

Operadores aritméticos

Un operador aritmético permite realizar un cálculo entre dos operandos (variables numéricas o valores) y devuelve un resultado.

OperadorSímboloEjemplo
Suma+suma = 3 + 2 → 5
Resta-resta = 3 - 2 → 1
Multiplicación*multiplicacion = 3 * 2 → 6
División/division = 3 / 2 → 1.5
Módulo o Resto%modulo = 3 % 2 → 1
Potencia**potencia = 3 ** 2 → 9
División entera//div_entera = 3 // 2 → 5

Operadores de texto
OperadorSímboloEjemplo
Concatenación+saludo = 'Hola ' + 'mundo' → 'Hola mundo'
Repetición*saludo = 'Hola ' * 2 → 'Hola Hola '

Expresiones

Una expresión (u operación) es una combinación de uno o más valores, variables y operadores, que pueden ser evaluados a un valor. Las expresiones no realizan una acción, sino que devuelven un resultado.

Ejercicios

  1. Calcula las siguientes operaciones y muéstralas en el terminal:
    3 + 6,  5 ‐ 4,  6 * 3,  8 / 2,  7 / 2

  2. Escribe las expresiones siguientes en código Python:
    1 más 6,  3 multiplicado por 5,  12 menos 8 y 12 dividido entre 4.1

  3. Coloca los paréntesis en su lugar correspondiente para la expresión 4 + 5 * 6 de forma que:

    • Python realice primero las sumas.
    • Python realice primero las multiplicaciones.
  4. Transforma los textos siguientes en código de Python:

    • Asignar a m el número 20
    • Dividir m entre 3 y almacenarlo en la variable p
    • Restar m menos 6 y almacenarlo en la variable q
  5. Escribe la palabra elefante dentro de una variable llamada animal.
    Escribe la palabra rosa dentro de una variable llamada color.
    Concatena ambas variables dejando un espacio en blanco en medio de ellas

  6. Identifica regularidades en las siguientes cadenas, y escribe expresiones que, partiendo de subcadenas más cortas y utilizando los operadores de concatenación y repetición, produzcan las cadenas que se muestran. Introduce variables para formar las expresiones cuando lo consideres oportuno.
    1. %%%%%./././<-><->
    2. (@)(@)(@)======(@)(@)(@)======
    3. asdfasdfasdf=-=-=-=-=-=-=-??????asdfasdf
    4. ........*****---*****---........*****---*****---