Hasta ahora hemos trabajado con variables que permiten almacenar un único valor:
edad=12 altura=1.79 nombre="juan"
En Python existe un tipo de variable que permite almacenar una colección de datos y luego acceder por medio de un subíndice (similar a los string)
Para crear una lista por asignación debemos indicar sus elementos encerrados entre corchetes y separados por coma.
lista1=[10, 5, 3] # lista de enteros lista2=[1.78, 2.66, 1.55, 89,4] # lista de valores float lista3=["lunes", "martes", "miercoles"] # lista de string lista4=["juan", 45, 1.92] # lista con elementos de distinto tipo
Si queremos conocer la cantidad de elementos de una lista podemos llamar a la función len:
lista1=[10, 5, 3] # lista de enteros print(len(lista1)) # imprime un 3
Definir una lista que almacene 5 enteros. Sumar todos sus elementos y mostrar dicha suma.
lista=[10,7,3,7,2] suma=0 x=0 while x<len(lista): suma=suma+lista[x] x=x+1 print("Los elementos de la lista son") print(lista) print("La suma de todos sus elementos es") print(suma)
Primero definimos una lista por asignación con 5 elementos:
lista=[10,7,3,7,2]
Definimos un acumulador para sumar los elementos de la lista y un contador para indicar que posición de la lista accedemos:
suma=0 x=0
Mediante un ciclo while recorremos y sumamos cada elementos de la lista:
while x<len(lista): suma=suma+lista[x] x=x+1
Cuando llamamos a la función print pasando como dato una lista luego se muestra en pantalla todos los elementos de la lista entre corchetes y separados por coma tal cual como la definimos:
print("Los elementos de la lista son") print(lista)
Finalmente mostramos el acumulador:
print("La suma de todos sus elementos es") print(suma)
Definir una lista por asignación que almacene los nombres de los primeros cuatro meses de año. Mostrar el primer y último elemento de la lista solamente.
meses=["enero", "febrero", "marzo", "abril"] print(meses[0]) # se muestra enero print(meses[3]) # se muestra abril
Como queremos imprimir solo el primer y último elemento de la lista indicamos entre corchetes la posición de la lista del cual queremos rescatar el valor.
Si llamamos a print y pasamos solo el nombre de la lista luego se nos muestra todos los elementos:
print(meses) # se muestra ["enero", "febrero", "marzo", "abril"]
Definir una lista por asignación que almacene en la primer componente el nombre de un alumno y en las dos siguientes sus notas. Imprimir luego el nombre y el promedio de las dos notas.
lista=["ana", 7, 9] print("Nombre del alumno:") print(lista[0]) promedio=(lista[1]+lista[2])//2 print("Promedio de sus dos notas:") print(promedio)
Como vemos en este problema los elementos de una lista pueden ser de distinto tipo, aquí tenemos el primer elemento de tipo string y los dos siguientes de tipo int.
Recordemos que el operador // se utiliza para dividir dos valores y retornar solo la parte entera.
ejercicio72.py lista=[1000, 6000, 400, 23, 130, 400, 60, 2000] cantidad=0 x=0 while x<len(lista): if lista[x]>100: cantidad=cantidad+1 x=x+1 print("La lista esta constituida por los elementos:") print(lista) print("La cantidad de valores mayores a 100 en la lista son:") print(cantidad) ejercicio73.py lista=[8,1,9,2,10] x=0 print("Elementos de la lista con valores iguales o superiores a 7") while x<len(lista): if lista[x]>=7: print(lista[x]) x=x+1 ejercicio74.py nombres=["juan", "ana", "marcos", "carlos", "luis"] cantidad=0 x=0 while x<len(nombres): if len(nombres[x])>=5: cantidad=cantidad+1 x=x+1 print("Todos los nombres son") print(nombres) print("Cantidad de nombres con 5 o mas caracteres") print(cantidad)