#### What Will I Learn?
- How to create tuples and lists.
- Access data from tuples and lists
- Modify data from a list
- Add new data to an existing list
- Amount of data that contains a list
#### Requirements
- Basic knowledge of programming
- Have python installed
- Have Sublime Text installed (optional)
#### Difficulty
- Intermediate
#### Tutorial Contents
<center>
<a href="https://imgur.com/gallery/ciwlCWa"><strong>Fuente</strong></a></center>
<div class="text-justify"><p>En este tutorial aprenderemos como usar Tuplas y listas dentro del lenguaje de Python, tomando en cuenta ciertos pasos que vimos en los anteriores tutoriales, adicionalmente aprenderemos sobre una de las funciones en este lenguaje de programación.</p></div>
Empezaremos dando una explicación de lo que se tratan las Tuplas y las Listas.
# Tuplas
<div class="text-justify"><p>Es una variable la cual permite almacenar distintos datos, estos pueden ser de cualquier tipo, es decir, numero entero, booleano, cadena le letras entre otros, todos los datos que ingresemos en la Tupla son INMUTABLES, esto se refiere a que no lo podemos modificar ni alterar después de haberlo integrado a la misma.</p></div>
Para crear una Tupla en Python usamos el siguiente código:
<code>tupla = ()</code>
<div class="text-justify"><p>Dentro de “()” colocaremos todos los datos que deseamos integrar en la tupla, estos tomaran posiciones desde el 0 hasta el número máximo de datos que ingresemos, en este caso vamos a realizar una tupla de 5 elementos, deben estar separados por una “,” y un espacio, el código seria el siguiente:</p></div>
<code>tupla = ('letras', 45, True, 2.5, 'utopian')</code>

<div class="text-justify"><p>Como podemos observar ingresamos datos tipo cadena de caracteres, números enteros, booleano y números reales, cada uno separado con su respectiva coma, una vez realizada la tupla podemos acceder a sus elementos internos, a cada uno de ellos les corresponde un numero el cual comienza desde 0, en este caso es de 5 elementos sería una tupla de 0 a 4 posiciones, podemos acceder a cualquiera de ellas, usando el siguiente código:</p></div>
<code>print (tupla[0])</code>

<div class="text-justify"><p>Esto nos arrojará la cadena de caracteres “letras” ya que se encuentra en la posición “0” de nuestra tupla, haremos lo mismo para las siguientes posiciones con los siguientes códigos:</p></div>
<code>print (tupla[1])</code>
<code>print (tupla[2])</code>
<code>print (tupla[3])</code>
<code>print (tupla[4])</code>

<div class="text-justify"><p>Tambien tenemos la opción de acceder a los datos de la tupla con números negativos, esto se debe a que podemos contar sus posiciones desde -1 que sería el último dato hasta el primero, tomando el ejemplo anterior seria -5, vamos a verlo en la línea de código tomando el -1 y el -4:</p></div>
<code>print (tupla[-1])</code>
<code>print (tupla[-4])</code>

<div class="text-justify"><p>Como podemos observar nos arroja en la posición -1 la cadena “utopian” y el la posición -4 el número entero “45”, esta es otra forma de ver el contenido de nuestra tupla, sin embargo, el método más usado es el que vimos anteriormente.</p></div>
# Listas
<div class="text-justify"><p>Las listas tienen la misma utilidad que las tuplas, podemos contener cualquier tipo de datos en ellas, solo que en este caso son MODIFICABLES, es decir puedes cambiar o alterar cualquier dato contenido dentro de la misma, siendo esta la más útil como contenedoras de información, el código para crear una lista es muy similar solo que en vez de usar “()” usaremos “[]”, aquí podemos ver un ejemplo:</p></div>
<code>lista = []</code>
En este caso vamos a agregarle 6 elementos quedando el código de la siguiente manera:
<code>lista = [1024, 'steemit', False, 8.5, 'maria', 20]</code>

<div class="text-justify"><p>De la misma manera como accedimos a los datos en las tuplas podemos hacerlo con las listas y seria el mismo orden aplicado tanto con los números desde “0” como los negativos empezando por el “-1”, aplicando esto obtenemos lo siguiente:</p></div>
<code>print (lista[0])</code>
<code>print (lista[2])</code>
<code>print (lista[-1])</code>
<code>print (lista[-3])</code>

<div class="text-justify"><p>Además de ver un dato dentro de la lista podemos ver varios de ellos, aquí debemos de indicar cuál va ser la primera posición que deseamos visualizar acto seguido debemos de colocar dos puntos “:” y luego la última posición la cual no queremos ver, para que se entienda mejor coloquemos el ejemplo anterior, vamos a mostrar las posiciones 1, 2, 3 y 4 quiere decir que en nuestro resultado no vamos querer “1024” ni “20”, para esto usamos el siguiente código:</p></div>
<code>print (lista[1:5])</code>

<div class="text-justify"><p>Como pudimos ver con el “1” le indicamos que deseamos ver el segundo elemento que en este caso es “steemit” y el “5” se refiere al dato que NO queremos incluir en dicho llamado, en este caso es el “20” por lo que mostrará hasta el dato “maria”, es importante no confundirnos con esto y practicarlo las veces que sea necesarias hasta entenderlo a la perfección ya que posteriormente en futuros tutoriales va a ser esencial para progresar dentro de este lenguaje.</p></div>
Lo mismo podemos aplicar para posiciones usando los números negativos, tomando el mismo ejemplo quedaría de esta manera:
<code>print (lista[-6:-2])</code>

<div class="text-justify"><p>Como ven no toma en cuenta el dato “maria” ya que es el campo “-2”, sin embargo, el método más usado es el de identificar las posiciones desde el número “0” el cual se los recomiendo ampliamente.</p></div>
<div class="text-justify"><p>Ahora veremos cómo editar o cambiar cualquier elemento de la lista, debemos tomar en cuenta que podemos cambiar totalmente el tipo de variable contenida en la posición de la lista, es decir si tenemos un número entero, podemos modificarlo por uno que sea booleano o viceversa, en este caso vamos a usar la misma lista anterior, y vamos a cambiar “steemit” por “busy”, para eso usamos el siguiente código:</p></div>
<code>lista[1] = 'busy'</code>
<code>print (lista)</code>

<div class="text-justify"><p>Podemos observar que la posición “1” donde se alojaba el dato “steemit” cambió por “busy”, esto mismo podemos aplicar para cualquiera de ellas, pero si queremos cambiar varios datos a la vez también es posible, solo debemos de tener el rango de posiciones a la cual le cambiaremos dichos datos, tomando el resultado anterior vamos a cambiar las posiciones 2, 3 y 4 usando el siguiente código:</p></div>
<code>lista[1:4] = [3, 9, 55]</code>
<code>print (lista)</code>

<div class="text-justify"><p>Al igual como hacemos para ver su contenido lo aplicamos para alterar varios de sus datos a la vez, donde “1” sería la primera posición a tomar y “4” la posición que no se tomara en cuenta, modificando las posiciones 1, 2 y 3, debemos tomar en cuenta que si vamos a alterar 2 elementos son dos las variables que vamos a usar, esto debe ser totalmente igual de lo contrario se borrará el elemento que no estamos tomando en cuenta, en este caso son tres los elementos que deseo cambiar por lo que son tres datos los cuales debo agregar, vamos a ver un ejemplo con el siguiente código usando el resultado anterior:</p></div>
<code>lista[1:4] = [3, 9]</code>
<code>print (lista)</code>

<div class="text-justify"><p>Como pueden observar borro el dato “55”, esto se debe a que no le asigne ningún valor a ese lugar en específico, por lo que el lenguaje está programado para que automáticamente borre cualquier dato que este en dicha posición.</p></div>
<div class="text-justify"><p>Es importante destacar que también podemos integrar como dato en nuestra lista otra lista para esto simplemente aplicamos este código usando el anterior resultado:</p></div>
<code>lista[0] = ['listanueva', True]</code>
<code>print (lista)</code>

<div class="text-justify"><p>Ahora vamos añadir un elemento a una lista existente, para eso vamos a usar un elemento denominado dentro de la programación “método” el cual en la sintaxis de Python se conoce como “append”, que sería añadir o adjuntar en español, tomaremos el resultado de nuestra última lista, a estale vamos a agregar “nuevo dato” con el siguiente código:</p></div>
<code>lista.append('nuevo dato')</code>
<code>print (lista)</code>

<div class="text-justify"><p>Como podemos observar se agrega “nuevo dato” como último elemento de la lista, esto lo podemos hacer las veces que consideremos necesarias, ahora entraremos en el último detalle para cerrar el tema de las listas, podemos saber la cantidad de datos que tienen las mismas, en este caso como la lista es pequeña sabemos que tiene 6 datos, pero ¿qué pasaría si la lista tuviera 50 o 100 datos?, es aquí cuando entra una función en Python llamada “len”, usando la el resultado de la secuencia de ejemplos el código seria el siguiente:</p></div>
<code>len (lista)</code>

<div class="text-justify"><p>Automáticamente nos devuelve un valor numérico, dicho valor se refiere a la cantidad de datos que contiene nuestra lista, en este caso son 6 elementos, te recomiendo que practiques todos los elementos expuestos en este tutorial, más que todo las listas que son las que más usaremos en los próximos tutoriales, recuerda que si tienes alguna duda puedes usar la sección de comentarios ¡hasta la próxima!</p></div>
#### Curriculum
To understand optimally everything explained it is advisable to see these tutorials
- [Tutorial #1 Python: Declaración de variables y Tipo de datos](https://utopian.io/utopian-io/@gabox/tutorial-1-python-declaracion-de-variables-y-tipo-de-datos)
- [Tutorial #2 Python: Comentarios y Operadores Aritméticos](https://utopian.io/utopian-io/@gabox/tutorial-2-python-comentarios-y-operadores-aritmeticos)
<br /><hr/><em>Posted on <a href="https://utopian.io/utopian-io/@gabox/tutorial-3-python-tuplas-y-listas">Utopian.io - Rewarding Open Source Contributors</a></em><hr/>