Python R2


Tuplas en Python

Posted in Python por Arturo Elias Antón en 27 agosto 2008
Tags: , , ,

Una tupla es una lista se va a poder modificar después de haberla creado.
Las tuplas se definen como las listas salvando que en lugar de encerrarlas entre corchetes se encierran entre paréntesis.
Los índices de las tuplas empiezan en 0 e  índices negativos empiezan a contar desde el final de la lista.

Formas de recorrer una tupla y el manejo de índices podemos ver en tupla1.py

#!/usr/bin/python
# Nombre de Fichero : tupla1.py

tupla = (1,[2,3,4],2,"Pedro");

for r in tupla:
    print str(r)

print "----------------------------"

for i in range(len(tupla)):
    print str(i),"->",str(tupla[i])

print "----------------------------"
print "El ultimo elemento de la tupla es %s" % tupla[-1]
print "----------------------------"
print "Una tupla el segundo y tercer",
print "elemento de la tupla original %s" % str(tupla[1:3])
print "Los tres ultimos elementos %s" % str(tupla[1:])

Si bien las tuplas no se pueden modificar las tuplas se pueden trasformar a listas por medio del método list y las listas se pueden trasformar a tuplas por medio del método tuple.
Para ilustrar esto pondré un extracto de mi interprete python, con la salida del programa anterior

1
[2, 3, 4]
2
Pedro
----------------------------
0 -> 1
1 -> [2, 3, 4]
2 -> 2
3 -> Pedro
----------------------------
El ultimo elemento de la tupla es Pedro
----------------------------
Una tupla el segundo y tercer elemento de la tupla original ([2, 3, 4], 2)
Los tres ultimos elementos ([2, 3, 4], 2, 'Pedro')
>>> list(tupla)
[1, [2, 3, 4], 2, 'Pedro']
>>> tuple(list(tupla))
(1, [2, 3, 4], 2, 'Pedro')

La ventaja de las tuplas contra las listas es que las tuplas son más rápidas

Anuncios

3 comentarios to 'Tuplas en Python'

Subscribe to comments with RSS o TrackBack to 'Tuplas en Python'.

  1. zodman said,

    Si haces esto

    print “elemento de la tupla original %s” % str(tupla[1:3])

    No es necesario el str(tupla[1:3]) debido a que a que como estas haciendo print con %s lo que hace es pasar el valor como str al %s por lo que estarias haciendo 2 veces str a un %s….

    Funciona pero es mas elegante:

    print “elemento de la tupla original %s” % tupla[1:3]

    Saludos

  2. arturoeanton said,

    Amigo zodman, si le sacas el str y pones

    print “elemento de la tupla original %s” % tupla[1:3]

    al correrlo el interprete te da el error

    Traceback (most recent call last):
    File “C:/Python25/tupla1.py”, line 18, in
    print “elemento de la tupla original %s” % tupla[1:3]
    TypeError: not all arguments converted during string formatting

  3. Alejandro said,

    En python las tuplas son como listas que no pueden ser modificadas. Saludos!


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s


A %d blogueros les gusta esto: