Asignación de un elemento de una tupla

Marcos Sánchez Provencio rapto en arrakis.es
Lun Mayo 27 13:05:36 CEST 2002


El lun, 27-05-2002 a las 12:51, Miquel Llover escribió:
> Buenas,
> 
> Si creo una tupla del siguiente modo:
> 
>  >>> t = (None, None, None)
> 
> puedo hacer:
> 
>  >>>  t = (1, 2, 3)

¡OJO! Estás creando una nueva tupla que no tiene nada que ver con la
anterior. Sólo estás reutilizando el nombre de la variable. En vez de la
primer asignación podrías usar t='Blas', o nada en absoluto, ya que el
contenido de t se machaca con la nueva asignación.

> 
> pero si sólo quiero asignar un elemento de la tupla no me permite hacer:
> 
>  >>> t[0] = 1
Cierto, no puedes cambiar una tupla (eso es una ventaja en ciertas
ocasiones)

> 
> aunque si puedo poner:
> 
>  >>> print t[0]
Sí, tranquilamente.

> 
> Como se puede asignar solo un elemento de una tupla? Qué es más rápido, una 
> tupla o un diccionario?
No puedes. Si quieres algo modificable parecido a una tupla, usa una
lista.

La tupla y el diccionario son muy diferentes. ¿Más rápido haciendo qué?

> 
> Gracias de antemano,
De nadas.





Más información sobre la lista de distribución Python-es