Listas en Python

Listas en Python Aprende a utilizar la estructura de datos más utilizado al momento de realizar cualquier tipo de aplic

Views 82 Downloads 1 File size 669KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Listas en Python

Aprende a utilizar la estructura de datos más utilizado al momento de realizar cualquier tipo de aplicación, las listas. Python tiene muchos tipos de estructura de datos, una de ellas es la lista, es por ello que en este tutorial aprenderemos a usarlas y veremos sus métodos más utilizados. Si no conoces qué es Python, te lo explico a continuación. "Python es un lenguaje de programación interpretado de alto nivel y orientado a objetos, con el cual podemos crear todo tipo de aplicaciones." En algunos lenguajes de programación se las conocen como arreglos o matrices; y se caracterizan porque los elementos están entre corchetes y separados por una coma. lista = [1, 2, 3, 4]

¿Qué es una lista? Una lista es una estructura de datos y un tipo de dato en python con características especiales. Lo especial de las listas en Python es que nos permiten almacenar cualquier tipo de valor como enteros, cadenas y hasta otras funciones; por ejemplo: lista = [1, 2.5, 'DevCode', [5,6] ,4]

Una lista es un arreglo de elementos donde podemos ingresar cualquier tipo de dato, para acceder a estos datos podemos hacer mediante un índice.

print print print print print print print print print

lista[0] # 1 lista[1] # 2.5 lista[2] # DevCode lista[3] # [5,6] lista[3][0] # 5 lista[3][1] # 6 lista[1:3] # [2.5, 'DevCode'] lista[1:6] # [2.5, 'DevCode', [5, 6], 4] lista[1:6:2] # [2.5, [5, 6]]

Como pueden darse cuenta podemos hasta insertar una lista dentro de otra lista. Si no quieres estar imprimir uno por uno los elementos de una lista, puedes recorrerlo utilizando un for. for element in lista: print element

Métodos de las Listas Las listas en Python tienen muchos métodos que podemos utilizar, entre todos ellos vamos a nombrar los más importantes. Para esto utilizaremos esta lista de ejemplo. my_list = [2, 5, 'DevCode', 1.2, 5]

Sobre esta vamos a realizar diferentes métodos que son propios de las listas.

Append() Este método nos permite agregar nuevos elementos a una lista. my_list.append(10) # [2, 5, 'DevCode', 1.2, 5, 10] my_list.append([2,5]) # [2, 5, 'DevCode', 1.2, 5, [2, 5]]

Podemos agregar cualquier tipo de elemento a una lista, pero tengan en cuenta lo que pasa cuando agregamos una lista dentro de otra, esta lista se agrega como uno y solo un elemento.

Extend() Extend también nos permite agregar elementos dentro de una lista, pero a diferencia de append al momento de agregar una lista, cada elemento de esta lista se agrega como un elemento más dentro de la otra lista. my_list.extend([2,5]) # [2, 5, 'DevCode', 1.2, 5, 2, 5]

Remove() El método remove va a remover un elemento que se le pase como parámentro de la lista a donde se le esté aplicando.

my_list.remove(2) # [5, 'DevCode', 1.2, 5]

En este ejemplo estamos removiendo el elemento 2, de la lista que tiene por nombre "my_list".

Index() Index devuelve el número de indice del elemento que le pasemos por parámetro. my_list.index('DevCode') # 2

Aquí estamos preguntando por el indice de la cadena 'DevCode' dentro de la lista "my_list", esto devuelve 2.

Count() Para saber cuántas veces un elemento de una lista se repite podemos utilizar el metodo count(). my_list.count(5) # 2

Contamos cuantas veces se repite el número 5 dentro de la lista, y esto devuelve 2.

Reverse() También podemos invertir los elementos de una lista. my_list.reverse() # [5, 1.2, 'DevCode', 5, 2]

Estas son algunos de los métodos más útiles y más utilizados en las listas.Python es un gran lenguaje de programación que hace las cosas de una manera realmente sencilla.

Ejercicios: Listas Para la creacion de los programas utilizaremos el IDE Pycharm Profesional 2020, descargado e instalado en Linux Mint, desde su centro de software.

Ejercicio 1 Escribir un programa que almacene las asignaturas de un curso (por ejemplo Matemáticas, Física, Química, Historia y Lengua) en una lista y la muestre por pantalla.

Solucion: • •

Creamos una lista asignaturas Imprimimos la lista

Codigo: asignaturas = ["Matemáticas", "Física", "Química", "Historia", "Lengua"] print(asignaturas)

Ejercicio 2 Escribir un programa que almacene las asignaturas de un curso (por ejemplo Matemáticas, Física, Química, Historia y Lengua) en una lista y la muestre por pantalla el mensaje Yo estudio , donde es cada una de las asignaturas de la lista.

Solucion: • • •

Utilizamos un ciclo for El indice del vector es i Imprimimos el mensaje “Yo estudio “ + el elemento de la lista que corresponde al subindice i

Codigo: asignaturas = ["Matemáticas", "Física", "Química", "Historia", "Lengua"] for i in asignaturas: print("Yo estudio " + i) Resultado: /home/jose/Python2020/bin/python /home/jose/PycharmProjects/untitled/lista2.py Yo estudio Matemáticas Yo estudio Física Yo estudio Química Yo estudio Historia Yo estudio Lengua Process finished with exit code 0

Ejercicio 3 Escribir un programa que almacene las asignaturas de un curso (por ejemplo Matemáticas, Física, Química, Historia y Lengua) en una lista, pregunte al usuario la nota que ha sacado en cada asignatura, y después las muestre por pantalla con el mensaje En has sacado donde es cada una des las asignaturas de la lista y cada una de las correspondientes notas introducidas por el usuario.

Solucion: •

Definimos una lista vacia notas



Introducimos las notas para cada asignatura



Almacenamos las notas en la lista notas, para ello usamos el metodo append



Imprimos la nota de cada asignatura

Nota: Como dejamos abierta la posibilidad que se introduzca un numero indefinido de datos al vector (aunque en el ejemplo son 5), usamos el metodo len para indicar el tamaño del vector asignaturas y por ende el vector notas.

Para que los resultados no esten pegados a los datos introducidos, usamos una instrucción print() para dejar una linea en blanco.

Ejercicio 4 Escribir un programa que pregunte al usuario los números ganadores de la lotería primitiva, los almacene en una lista y los muestre por pantalla ordenados de menor a mayor. Solucion:



Definir una lista vacia premiados



Llenar la lista



Odenar la lista, con el metodo sort



Imprimir la lista ordenada

Ejercicio 5 Escribir un programa que almacene en una lista los números del 1 al 10 y los muestre por pantalla en orden inverso separados por comas. Solucion1: • •

Asignacion de los numeros del 1 al 10 al vector numeros Impresion de los numeros con un ciclo inverso

Codigo: numeros = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] for i in range(1, 11): print(numeros[-i], end=", ")

Resultado: /home/jose/Python2020/bin/python /home/jose/PycharmProjects/untitled/lista5.py 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, Process finished with exit code 0

Solucion2: • • •

Asignacion de los numeros del 1 al 10 al vector numeros Utilizacion del metodo reverse() para invertir el vector Impresion de la lista

Codigo:

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] numbers.reverse() for number in numbers: print(number, end=", ")

Solucion3: •

En vez de asignar los valores de manera manual ahora los generamos

• •

Utilizacion del metodo reverse() para invertir el vector Impresion de la lista

Codigo: numbers = [] for i in range(1,11): numbers.append(i) numbers.reverse()

for number in numbers: print(number, end=", ")

Ejercicio 6 Escribir un programa que almacene las asignaturas de un curso (por ejemplo Matemáticas, Física, Química, Historia y Lengua) en una lista, pregunte al usuario la nota que ha sacado en cada asignatura y elimine de la lista las asignaturas aprobadas. Al final el programa debe mostrar por pantalla las asignaturas que el usuario tiene que repetir.

Solucion: • • • • • •

Crear el vector de asignaturas Definir un vector de aprobados (vacio) La nota de aprobación es 5 Si la nota de aprobación es 5, llenar el vector de aprobados Del vector de asignaturas, eliminar aquellas que tengan nota de aprobación Imprimir las asignaturas a repetir

Ejercicio 7 Escribir un programa que almacene en una lista los siguientes precios, 50, 75, 46, 22, 80, 65, 8, y muestre por pantalla el menor y el mayor de los precios.

Solucion: •

Asignar los datos del ejercicio al vector prices



A la variable max se le asigna el primer valor del vector



A la variable min se le asigna el primer valor del vector



Se compara la variable max con cada elemento del vector



Si es mayor se asigna a max el elemento del vector



Se compara la variable min con cada elemento del vector



Si es menor se asigna a min el elemento del vector

Codigo: prices = [50, 75, 46, 22, 80, 65, 8] min = max = prices[0] for price in prices: if price < min: min = price elif price > max: max = price print("El mínimo es " + str(min)) print("El máximo es " + str(max)) Resultados: home/jose/Python2020/bin/python /home/jose/PycharmProjects/untitled/lista7.py El mínimo es 8 El máximo es 80

Process finished with exit code 0

Ejercicio 8 Escribir un programa que almacene los vectores (1,2,3) y (-1,0,2) en dos listas y muestre por pantalla su producto escalar. Solucion: Un poco de teoria, “El producto escalar de dos vectores es una operación que toma dos vectores y produce un número real”

Solucion: •

Crear el vector A



Crear el vector B



Multiplicar cada elemento del vector A con el elemento del vector B y sumar el resultado parcial



Imprimir el resultado

Prueba de escritorio: A = [1,2,3] A.B = -1+0+6 = 5

B = [-1,0,2]