Python 3 - Tuplas
Una tupla es una colección de objetos ordenados e inmutables. Las tuplas son secuencias, como listas. La principal diferencia entre las tuplas y las listas es que las tuplas no se pueden cambiar a diferencia de las listas. Las tuplas usan paréntesis, mientras que las listas usan corchetes.
Crear una tupla es tan simple como poner diferentes valores separados por comas. Opcionalmente, también puede poner estos valores separados por comas entre paréntesis. Por ejemplo
tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5 )
tup3 = "a", "b", "c", "d"
La tupla vacía se escribe como dos paréntesis que no contienen nada:
tup1 = ();
Para escribir una tupla que contenga un solo valor, debe incluir una coma, aunque solo haya un valor:
tup1 = (50,)
Al igual que los índices de cadena, los índices de tupla comienzan en 0 y se pueden cortar, concatenar, etc.
Acceder a valores en tuplas
Para acceder a los valores en tupla, use los corchetes para cortar junto con el índice o índices para obtener el valor disponible en ese índice. Por ejemplo
#!/usr/bin/python3
tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5, 6, 7 )
print ("tup1[0]: ", tup1[0])
print ("tup2[1:5]: ", tup2[1:5])
Cuando se ejecuta el código anterior, produce el siguiente resultado:
tup1[0]: physics
tup2[1:5]: (2, 3, 4, 5)
Actualizar tuplas
Las tuplas son inmutables, lo que significa que no puede actualizar ni cambiar los valores de los elementos de la tupla. Puede tomar partes de las tuplas existentes para crear nuevas tuplas, como lo demuestra el siguiente ejemplo:
#!/usr/bin/python3
tup1 = (12, 34.56)
tup2 = ('abc', 'xyz')
# Following action is not valid for tuples
# tup1[0] = 100;
# So let's create a new tuple as follows
tup3 = tup1 + tup2
print (tup3)
Cuando se ejecuta el código anterior, produce el siguiente resultado:
(12, 34.56, 'abc', 'xyz')
Eliminar elementos de tupla
No es posible eliminar elementos de tupla individuales. Por supuesto, no hay nada de malo en armar otra tupla con los elementos no deseados descartados.
Para eliminar explícitamente una tupla completa, simplemente use el deldeclaración. Por ejemplo
#!/usr/bin/python3
tup = ('physics', 'chemistry', 1997, 2000);
print (tup)
del tup;
print ("After deleting tup : ")
print (tup)
Esto produce el siguiente resultado.
Note- Se plantea una excepción. Esto es porque despuesdel tup, la tupla ya no existe.
('physics', 'chemistry', 1997, 2000)
After deleting tup :
Traceback (most recent call last):
File "test.py", line 9, in <module>
print tup;
NameError: name 'tup' is not defined
Operaciones básicas de tuplas
Las tuplas responden a los operadores + y * de forma muy parecida a las cadenas; aquí también se refieren a la concatenación y la repetición, excepto que el resultado es una nueva tupla, no una cadena.
De hecho, las tuplas responden a todas las operaciones de secuencia generales que usamos en cadenas en el capítulo anterior.
Expresión de Python | Resultados | Descripción |
---|---|---|
len ((1, 2, 3)) | 3 | Longitud |
(1, 2, 3) + (4, 5, 6) | (1, 2, 3, 4, 5, 6) | Concatenación |
('¡Hola!',) * 4 | ('¡Hola!', '¡Hola!', '¡Hola!', '¡Hola!') | Repetición |
3 pulgadas (1, 2, 3) | Cierto | Afiliación |
para x en (1,2,3): print (x, end = '') | 1 2 3 | Iteración |
Indexación, corte y matrices
Dado que las tuplas son secuencias, la indexación y el corte funcionan de la misma manera para las tuplas que para las cadenas, asumiendo la siguiente entrada:
T=('C++', 'Java', 'Python')
Expresión de Python | Resultados | Descripción |
---|---|---|
T [2] | 'Pitón' | Las compensaciones comienzan en cero |
T [-2] | 'Java' | Negativo: cuenta desde la derecha |
T [1:] | ('Java', 'Python') | Cortar recupera secciones |
Sin delimitadores adjuntos
Sin Delimitadores adjuntos es cualquier conjunto de objetos múltiples, separados por comas, escritos sin símbolos identificativos, es decir, corchetes para listas, paréntesis para tuplas, etc., por defecto a tuplas, como se indica en estos breves ejemplos.
Funciones de tupla integradas
Python incluye las siguientes funciones de tupla:
No Señor. | Función descriptiva |
---|---|
1 | cmp (tupla1, tupla2) Compara elementos de ambas tuplas. |
2 | len (tupla) Da la longitud total de la tupla. |
3 | max (tupla) Devuelve el artículo de la tupla con valor máximo. |
4 | min (tupla) Devuelve el artículo de la tupla con valor mínimo. |
5 | tupla (seq) Convierte una lista en tupla. |