Tuplas en Python (tuple)

Las tuplas en Python son un tipo o estructura de datos que permite almacenar datos de una manera muy parecida a las listas, con la salvedad de que son inmutables.

  • Crear una tupla en Python

Las tuplas en Python o tuples son muy similares a las listas, pero con dos diferencias. Son inmutables, lo que significa que no pueden ser modificadas una vez declaradas, y en vez de inicializarse con corchetes se hace con (). Dependiendo de lo que queramos hacer, las tuplas pueden ser más rápidas.

<span>tupla</span> <span>=</span> <span>(</span><span>1</span><span>,</span> <span>2</span><span>,</span> <span>3</span><span>)</span>
<span>print</span><span>(</span><span>tupla</span><span>)</span> <span>#(1, 2, 3) </span>
  <span>tupla</span> <span>=</span> <span>(</span><span>1</span><span>,</span> <span>2</span><span>,</span> <span>3</span><span>)</span> 
  <span>print</span><span>(</span><span>tupla</span><span>)</span> <span>#(1, 2, 3) </span>
tupla = (1, 2, 3) print(tupla) #(1, 2, 3)

Enter fullscreen mode Exit fullscreen mode

También pueden declararse sin (), separando por , todos sus elementos.

<span>tupla</span> <span>=</span> <span>1</span><span>,</span> <span>2</span><span>,</span> <span>3</span>
<span>print</span><span>(</span><span>type</span><span>(</span><span>tupla</span><span>))</span> <span>#<class 'tuple'> </span> <span>print</span><span>(</span><span>tupla</span><span>)</span> <span>#(1, 2, 3) </span>
  <span>tupla</span> <span>=</span> <span>1</span><span>,</span> <span>2</span><span>,</span> <span>3</span>
  <span>print</span><span>(</span><span>type</span><span>(</span><span>tupla</span><span>))</span> <span>#<class 'tuple'> </span>  <span>print</span><span>(</span><span>tupla</span><span>)</span> <span>#(1, 2, 3) </span>
tupla = 1, 2, 3 print(type(tupla)) #<class 'tuple'> print(tupla) #(1, 2, 3)

Enter fullscreen mode Exit fullscreen mode

  • Operaciones con tuplas

Como hemos comentado, las tuplas son tipos inmutables, lo que significa que una vez asignado su valor, no puede ser modificado. Si se intenta, tendremos un TypeError.

<span>tupla</span> <span>=</span> <span>(</span><span>1</span><span>,</span> <span>2</span><span>,</span> <span>3</span><span>)</span>
<span>#tupla[0] = 5 # Error! TypeError </span>
  <span>tupla</span> <span>=</span> <span>(</span><span>1</span><span>,</span> <span>2</span><span>,</span> <span>3</span><span>)</span> 
  <span>#tupla[0] = 5 # Error! TypeError </span>
tupla = (1, 2, 3) #tupla[0] = 5 # Error! TypeError

Enter fullscreen mode Exit fullscreen mode

Al igual que las listas, las tuplas también pueden ser anidadas.

<span>tupla</span> <span>=</span> <span>1</span><span>,</span> <span>2</span><span>,</span> <span>(</span><span>'a'</span><span>,</span> <span>'b'</span><span>),</span> <span>3</span>
<span>print</span><span>(</span><span>tupla</span><span>)</span> <span>#(1, 2, ('a', 'b'), 3) </span> <span>print</span><span>(</span><span>tupla</span><span>[</span><span>2</span><span>][</span><span>0</span><span>])</span> <span>#a </span>
   <span>tupla</span> <span>=</span> <span>1</span><span>,</span> <span>2</span><span>,</span> <span>(</span><span>'a'</span><span>,</span> <span>'b'</span><span>),</span> <span>3</span> 
   <span>print</span><span>(</span><span>tupla</span><span>)</span> <span>#(1, 2, ('a', 'b'), 3) </span>   <span>print</span><span>(</span><span>tupla</span><span>[</span><span>2</span><span>][</span><span>0</span><span>])</span> <span>#a </span>
tupla = 1, 2, ('a', 'b'), 3 print(tupla) #(1, 2, ('a', 'b'), 3) print(tupla[2][0]) #a

Enter fullscreen mode Exit fullscreen mode

Y también es posible convertir una lista en tupla haciendo uso de al función tuple().

<span>lista</span> <span>=</span> <span>[</span><span>1</span><span>,</span> <span>2</span><span>,</span> <span>3</span><span>]</span>
<span>tupla</span> <span>=</span> <span>tuple</span><span>(</span><span>lista</span><span>)</span>
<span>print</span><span>(</span><span>type</span><span>(</span><span>tupla</span><span>))</span> <span>#<class 'tuple'> </span> <span>print</span><span>(</span><span>tupla</span><span>)</span> <span>#(1, 2, 3) </span>
   <span>lista</span> <span>=</span> <span>[</span><span>1</span><span>,</span> <span>2</span><span>,</span> <span>3</span><span>]</span> 
   <span>tupla</span> <span>=</span> <span>tuple</span><span>(</span><span>lista</span><span>)</span> 
   <span>print</span><span>(</span><span>type</span><span>(</span><span>tupla</span><span>))</span> <span>#<class 'tuple'> </span>   <span>print</span><span>(</span><span>tupla</span><span>)</span> <span>#(1, 2, 3) </span>
lista = [1, 2, 3] tupla = tuple(lista) print(type(tupla)) #<class 'tuple'> print(tupla) #(1, 2, 3)

Enter fullscreen mode Exit fullscreen mode

Se puede iterar una tupla de la misma forma que se hacía con las listas.

<span>tupla</span> <span>=</span> <span>[</span><span>1</span><span>,</span> <span>2</span><span>,</span> <span>3</span><span>]</span>
<span>for</span> <span>t</span> <span>in</span> <span>tupla</span><span>:</span>
<span>print</span><span>(</span><span>t</span><span>)</span> <span>#1, 2, 3 </span>
  <span>tupla</span> <span>=</span> <span>[</span><span>1</span><span>,</span> <span>2</span><span>,</span> <span>3</span><span>]</span> 
  <span>for</span> <span>t</span> <span>in</span> <span>tupla</span><span>:</span> 
      <span>print</span><span>(</span><span>t</span><span>)</span> <span>#1, 2, 3 </span>
tupla = [1, 2, 3] for t in tupla: print(t) #1, 2, 3

Enter fullscreen mode Exit fullscreen mode

Y se puede también asignar el valor de una tupla con n elementos a n variables.

<span>l</span> <span>=</span> <span>(</span><span>1</span><span>,</span> <span>2</span><span>,</span> <span>3</span><span>)</span>
<span>x</span><span>,</span> <span>y</span><span>,</span> <span>z</span> <span>=</span> <span>l</span>
<span>print</span><span>(</span><span>x</span><span>,</span> <span>y</span><span>,</span> <span>z</span><span>)</span> <span>#1 2 3 </span>
   <span>l</span> <span>=</span> <span>(</span><span>1</span><span>,</span> <span>2</span><span>,</span> <span>3</span><span>)</span> 
   <span>x</span><span>,</span> <span>y</span><span>,</span> <span>z</span> <span>=</span> <span>l</span> 
   <span>print</span><span>(</span><span>x</span><span>,</span> <span>y</span><span>,</span> <span>z</span><span>)</span> <span>#1 2 3 </span>
l = (1, 2, 3) x, y, z = l print(x, y, z) #1 2 3

Enter fullscreen mode Exit fullscreen mode

Aunque tal vez no tenga mucho sentido a nivel práctico, es posible crear una tupla de un solo elemento. Para ello debes usar , antes del paréntesis, porque de lo contrario (2) sería interpretado como int.

<span>tupla</span> <span>=</span> <span>(</span><span>2</span><span>,)</span>
<span>print</span><span>(</span><span>type</span><span>(</span><span>tupla</span><span>))</span> <span>#<class 'tuple'> </span> <span>Métodos</span> <span>tuplas</span>
<span>count</span><span>(</span><span><</span><span>obj</span><span>></span><span>)</span>
  <span>tupla</span> <span>=</span> <span>(</span><span>2</span><span>,)</span> 
  <span>print</span><span>(</span><span>type</span><span>(</span><span>tupla</span><span>))</span> <span>#<class 'tuple'> </span>  <span>Métodos</span> <span>tuplas</span>
  <span>count</span><span>(</span><span><</span><span>obj</span><span>></span><span>)</span>
tupla = (2,) print(type(tupla)) #<class 'tuple'> Métodos tuplas count(<obj>)

Enter fullscreen mode Exit fullscreen mode

El método count() cuenta el número de veces que el objeto pasado como parámetro se ha encontrado en la lista.

<span>l</span> <span>=</span> <span>[</span><span>1</span><span>,</span> <span>1</span><span>,</span> <span>1</span><span>,</span> <span>3</span><span>,</span> <span>5</span><span>]</span>
<span>print</span><span>(</span><span>l</span><span>.</span><span>count</span><span>(</span><span>1</span><span>))</span> <span>#3 </span> <span>index</span><span>(</span><span><</span><span>obj</span><span>></span><span>[,</span><span>index</span><span>])</span>
  <span>l</span> <span>=</span> <span>[</span><span>1</span><span>,</span> <span>1</span><span>,</span> <span>1</span><span>,</span> <span>3</span><span>,</span> <span>5</span><span>]</span> 
  <span>print</span><span>(</span><span>l</span><span>.</span><span>count</span><span>(</span><span>1</span><span>))</span> <span>#3 </span>  <span>index</span><span>(</span><span><</span><span>obj</span><span>></span><span>[,</span><span>index</span><span>])</span>
l = [1, 1, 1, 3, 5] print(l.count(1)) #3 index(<obj>[,index])

Enter fullscreen mode Exit fullscreen mode

El método index() busca el objeto que se le pasa como parámetro y devuelve el índice en el que se ha encontrado.

<span>l</span> <span>=</span> <span>[</span><span>7</span><span>,</span> <span>7</span><span>,</span> <span>7</span><span>,</span> <span>3</span><span>,</span> <span>5</span><span>]</span>
<span>print</span><span>(</span><span>l</span><span>.</span><span>index</span><span>(</span><span>5</span><span>))</span> <span>#4 </span>
  <span>l</span> <span>=</span> <span>[</span><span>7</span><span>,</span> <span>7</span><span>,</span> <span>7</span><span>,</span> <span>3</span><span>,</span> <span>5</span><span>]</span> 
  <span>print</span><span>(</span><span>l</span><span>.</span><span>index</span><span>(</span><span>5</span><span>))</span> <span>#4 </span>
l = [7, 7, 7, 3, 5] print(l.index(5)) #4

Enter fullscreen mode Exit fullscreen mode

En el caso de no encontrarse, se devuelve un ValueError.

<span>l</span> <span>=</span> <span>[</span><span>7</span><span>,</span> <span>7</span><span>,</span> <span>7</span><span>,</span> <span>3</span><span>,</span> <span>5</span><span>]</span>
<span>#print(l.index(35)) #Error! ValueError </span>
   <span>l</span> <span>=</span> <span>[</span><span>7</span><span>,</span> <span>7</span><span>,</span> <span>7</span><span>,</span> <span>3</span><span>,</span> <span>5</span><span>]</span> 
   <span>#print(l.index(35)) #Error! ValueError </span>
l = [7, 7, 7, 3, 5] #print(l.index(35)) #Error! ValueError

Enter fullscreen mode Exit fullscreen mode

El método index() también acepta un segundo parámetro opcional, que indica a partir de que índice empezar a buscar el objeto.

<span>l</span> <span>=</span> <span>[</span><span>7</span><span>,</span> <span>7</span><span>,</span> <span>7</span><span>,</span> <span>3</span><span>,</span> <span>5</span><span>]</span>
<span>print</span><span>(</span><span>l</span><span>.</span><span>index</span><span>(</span><span>7</span><span>,</span> <span>2</span><span>))</span> <span>#2 </span>
   <span>l</span> <span>=</span> <span>[</span><span>7</span><span>,</span> <span>7</span><span>,</span> <span>7</span><span>,</span> <span>3</span><span>,</span> <span>5</span><span>]</span> 
   <span>print</span><span>(</span><span>l</span><span>.</span><span>index</span><span>(</span><span>7</span><span>,</span> <span>2</span><span>))</span> <span>#2 </span>
l = [7, 7, 7, 3, 5] print(l.index(7, 2)) #2

Enter fullscreen mode Exit fullscreen mode

原文链接:Tuplas en Python (tuple)

© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享
So what if we fall down? At least we are still young.
摔倒了又怎样,至少我们还年轻
评论 抢沙发

请登录后发表评论

    暂无评论内容