CodeGym /Cursos /Python SELF ES /Tuplas (Tuple)

Tuplas (Tuple)

Python SELF ES
Nivel 8 , Lección 1
Disponible

10.1 Qué es una tupla y sus propiedades

Las tuplas son uno de los cuatro tipos de colecciones integradas en Python.

Como ya sabes, en Python hay varios tipos de datos integrados que permiten almacenar grupos de objetos. Estos son list — lista, tuple — tupla, set — conjunto, dictionary — diccionario. Hoy vamos a ver el segundo y uno de los más simples — la tupla.

Una tupla (tuple) permite almacenar varios elementos. Cada elemento tiene su propio número de orden, lo que hace que la tupla sea ordenada — ordered. En esto, se parece a una lista.

No se puede modificar una tupla — una vez creada, permanece inmutable, lo que la hace ideal para almacenar datos que no deben cambiar en el programa. Por eso, su segunda característica es la inmutabilidad (immutable).

En cuanto a duplicados — en la tupla se pueden almacenar elementos iguales varias veces — allow duplicates. Una vez más, muy parecido a una lista.

Útil. Puedes pensar en una tupla como una lista inmutable que en lugar de corchetes [] usa paréntesis ().

10.2 Creación de una tupla

Las tuplas son secuencias inmutables de elementos, que pueden ser creadas de diferentes maneras. Estas son las más comunes:

Declaración directa:

Las tuplas se pueden crear directamente usando paréntesis () y comas para separar los elementos.


tuple1 = (1, 2, 3)
tuple2 = ("apple", "banana", "cherry", "apple", "cherry")
tuple3 = (1, "apple", True)

Sin paréntesis:

Python permite crear tuplas sin usar paréntesis, simplemente separando los elementos con comas.


tuple1 = 1, 2, 3
tuple2 = "apple", "banana", "cherry", "apple", "cherry"
tuple3 = 1, "apple", True

Tupla de un solo elemento:

Para crear una tupla con un solo elemento es necesario poner una coma después de este elemento.


tuple1 = (1,)
tuple2 = ("apple",)
tuple3 = (True,)

Usando tuple():

La función tuple() convierte un objeto iterable en una tupla. Esto puede ser una lista, cadena o cualquier otro objeto iterable.


list_to_tuple = tuple([1, 2, 3])

10.3 Desempaquetado de elementos de la tupla

Al trabajar con tuplas, puedes empaquetar varios elementos en una sola tupla o desempaquetar una tupla en varias variables, lo que simplifica el código:

Desempaquetado básico

Ejemplo de desempaquetado de una tupla en variables:


my_tuple = (1, 2, 3)
x, y, z = my_tuple

Aquí, las variables x, y y z reciben los valores 1, 2 y 3 respectivamente.

Desempaquetado extendido

Python también admite el desempaquetado extendido, que permite extraer partes de una tupla en una lista, usando el símbolo *:


a, *b, c = (1, 2, 3, 4, 5)  # a = 1, b = [2, 3, 4], c = 5

En este ejemplo, a y c reciben el primer y último valor, y b se convierte en una lista con todos los demás valores.

Aplicación en funciones

El desempaquetado de tuplas se usa a menudo al pasar parámetros a funciones. Es especialmente útil cuando la función acepta un número variable de argumentos o cuando los argumentos se empaquetan previamente en tuplas o listas:


def func(a, b, c):
    print(a, b, c)
        
values = (1, 2, 3)
func(*values)

Características de uso

El desempaquetado de tuplas requiere una coincidencia exacta del número de elementos de la tupla con el número de variables a las que se les asignan, de lo contrario se generará un error. Sin embargo, usar * para recopilar elementos adicionales permite evitar este error, haciendo el código más flexible a cambios en los datos.

10.4 Lista de métodos

Las tuplas son objetos inmutables, por lo que casi no tienen métodos propios. Solo dos 😊

Función count(x):

Devuelve el número de veces que x aparece en la tupla. Esto es útil para contar el número de elementos específicos.


t = (1, 2, 3, 2, 4, 2)
print(t.count(2)) # Imprimirá 3 

Función index(x):

Devuelve el índice de la primera aparición del elemento x en la tupla. Si el elemento no se encuentra, se produce la excepción ValueError.


t = (1, 2, 3, 2, 4, 2)
print(t.index(3)) # Imprimirá 2 

Aunque estos son todos los métodos de la clase tuple, eso no significa que no se pueda hacer nada con ella. Se puede, solo que será un poco más complicado.

Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION