Tutorial de Python - Tipo de datos - Tupla

Jinku Hu 30 enero 2023
  1. Ventajas de la tupla sobre la lista
  2. Crear una tupla
  3. Elementos de la tupla de acceso
  4. Métodos de tupla en Python
  5. Funciones incorporadas de la tupla:
  6. Cheque de membresía de la tupla
  7. Iterar a través de una tupla
Tutorial de Python - Tipo de datos - Tupla

En esta sección, introduciremos cómo crear y utilizar las tuplas.

Una tupla es similar a una lista con la diferencia de que la tupla es inmutable pero la lista es mutable.

Ventajas de la tupla sobre la lista

  1. Las tuplas se utilizan principalmente cuando los elementos tienen diferentes tipos de datos, mientras que las listas se utilizan cuando los elementos son del mismo tipo de datos.
  2. Viajar a traves de tuplas es mas rapido ya que no se puede actualizar una tupla.
  3. Puede utilizar los elementos inmutables de la tupla como clave en el diccionario. Esto no se puede hacer con una lista.
  4. Las tuplas garantizan la protección de los datos ya que son inmutables.

Crear una tupla

Puede definir una tupla de Python usando el paréntesis () y separar los elementos con comas ,. Una tupla puede tener elementos de cualquier tipo de datos.

>>> x = (3, 'pink', 3+8j)
>>> print('x[0] =', x[0])
x[0] = 3
>>> print('x[0:2] =', x[0:2])
x[0:2] = (3, 'pink')
>>> x[0] = 4
TypeError: 'tuple' object does not support item assignment

Si la tupla contiene un solo elemento, por ejemplo, el elemento es de tipo de datos de cadena, entonces la tupla no será considerada como una tupla sino que será considerada como una cadena. Vea el ejemplo a continuación:

>>> x = ("Python")
>>> print(type(x))
<class 'str'>

Aquí puede ver que el tipo de datos de x es str en lugar de tuple. Para que sea una tupla se usará una coma al final de la misma:

>>> x = "Python",
>>> print(type(x))
<class 'tuple'>

Elementos de la tupla de acceso

Se puede acceder a los elementos de la tupla de cualquiera de las siguientes maneras:

Índice

Un operador de índice [] puede ser usado para acceder a los elementos de una tupla. El índice de la tupla comienza en 0. Si el índice no está en el rango (elemento no definido en ese índice en la tupla), tendrá un IndexError. Debe notarse aquí que el índice debe ser un número entero, de lo contrario, se producirá un TypeError.

>>> x = (3, 'pink', 3+8j)
>>> print(x[0])
3
>>> print(x[2])
(3+8j)

Índice Negativo

Al igual que en la lista de Python, se pueden utilizar índices negativos para acceder a elementos tuplicados.

>>> l = (2, 4, 6, 8, 10)
>>> print(l[-1])
10
>>> print(l[-2])
8
>>> print(l[-3])
6

Rebanada

Un operador de rebanado : se utiliza para extraer un rango de elementos de una tupla.

>>> l = (2, 4, 6, 8, 10)
>>> print(l[1:3])		#prints from location 1 to 3
(4, 6)
>>> print(l[:2])		#prints from the beginning to location 2
(2, 4)
>>> print(l[2:])		#prints elements from location 2 onwards
(6, 8, 10)
>>> print(l[:])		#prints entire list
(2, 4, 6, 8, 10)

Concatenar tuplas

Se pueden concatenar dos tuplas utilizando el operador +.

>>> l = (2, 4, 6, 8, 10)
>>> print(l + (12, 14, 16)
(2, 4, 6, 8, 10, 12, 14, 16)

Borrar una tupla

Los elementos de una tupla no se pueden borrar porque las tuplas son inmutables. Pero puede borrar la tupla completa usando la palabra clave del:

l = (2, 4, 6, 8, 10)
del l

Métodos de tupla en Python

Las tuplas tienen sólo dos métodos ya que las tuplas son inmutables:

Métodos Descripción
count(a) se utiliza para devolver un número de elementos igual a a.
index(a) se utiliza para devolver el índice del primer elemento igual a a.

Funciones incorporadas de la tupla:

A continuación se muestran las funciones incorporadas en la tupla aplicables a la tuple para realizar diferentes tareas:

Funciones Descripción
all() devuelve True cuando todos los elementos de la tupla son True. También devuelve True cuando la tupla está vacía.
any() devuelve True cuando cualquiera de los elementos de la tupla es True. Devuelve False cuando la tupla está vacía.
enumerate() devuelve el índice y el valor de todos los elementos de la tupla como una tupla. Devuelve un objeto enumerate.
len() devuelva el número de artículos de una tupla o la longitud de la tupla.
tuple() convertir una secuencia (tupla, conjunto, cadena, diccionario) en tupla.
max() devuelve el número máximo de la tupla.
min() devuelva el número mínimo de la tupla.
sorted() devolver una tupla ordenada.
sum() devuelve la suma de todos los elementos de la tupla.

Cheque de membresía de la tupla

La palabra clave in comprueba si un elemento es miembro de la tupla o no. Vea el código exaple abajo:

>>> l = (2, 4, 6, 8, 10)
>>> print(5 in l)
False
>>> print(2 in l
True

Iterar a través de una tupla

Puedes iterar a través de una tupla usando for el bucle:

l = (2, 4, 6, 8, 10)
for i in l:
    print(i)
2
4
6
8
10
Autor: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook