Está en la página 1de 11

Fundamentos de Computación y Universidad de Santiago de Chile

Programación

CLASE 6

LISTAS

EJERCICIO PROPUESTO
 Se requiere calcular el sueldo líquido a pagar a cada uno de
los 55 empleados de una organización, conociendo el
porcentaje a descontar a cada uno de ellos por cotizaciones
de AFP y salud y el sueldo bruto que cada uno recibe

 Si en primera instancia asumimos que el descuento es de


7% por salud y 10% por AFP, ¿Cómo haríamos para calcular
el sueldo líquido para todos?

1
Fundamentos de Computación y Universidad de Santiago de Chile
Programación

INTRODUCCIÓN

 Hemos visto hasta el momento como definir y utilizar


variables y funciones para resolver cálculos complejos.
 Podemos decirle a Python que escoja un flujo de
ejecución u otro a través de las sentencias condicionales
 Sabemos hacer que el computador repita instrucciones
Iteración.
 Conocemos los tipos de dato, int, long, float y
boolean, pero hoy aprenderemos a trabajar con uno
más

OBJETIVOS

 Conocer lo que es un lista.

 Comprender cómo declarar y acceder a una


lista en python.

 Utilizar la funciones y métodos de las listas.

 Nuevas funciones para crear listas a partir de


strings y de archivos.
4

2
Fundamentos de Computación y Universidad de Santiago de Chile
Programación

LISTA
 Las listas son un tipo de dato que sirven para
almacenar más de un dato a la vez.
 Se representan por corchetes ([ ]) y cada uno
de sus elementos se separan por una coma (,)

lista = [1,2,3]

Asignación Elementos
Variable que
Lista
será una lista 5

LISTA
 Pueden almacenar números, texto o combinaciones
de tipos de datos en ellas.
>>> listaEjemplo = ["Hola", True, 2.5, 9L]
>>> listaEjemplo
["Hola", True, 2.5, 9L]

 Si se almacena una expresión, esta se evaluará y luego


se guardará
>>> listaOperaciones = [2*4, 3+34/3, int(3.4)]
>>> listaOperaciones
[8, 14, 3]

3
Fundamentos de Computación y Universidad de Santiago de Chile
Programación

LISTA
 Se puede declarar una lista vacía:

>>> listaVacia=[]
>>> listaVacia
[]

 Una lista puede tener dentro de si otra lista


>>> listaIndefinida=[1, 1.2,["hola“, “adios”]]
>>> listaIndefinida
[1, 1.2, ['hola‘, ‘adios’]]

ACCEDER A UN ELEMENTO

 Es posible acceder a los elementos dentro de


una lista directamente

 Se encuentran indexados mediante posiciones

 Para acceder a un elemento en particular se


debe indicar la posición dentro de la lista

4
Fundamentos de Computación y Universidad de Santiago de Chile
Programación

ACCEDER A CARACTER

 La indexación parte desde una posición 0


hasta el largo de la lista - 1

 Tomemos la siguiente lista de 9 elementos


como ejemplo:
lista=[100,101,102,103,104,105,106,107,108]

 Por lo que su primer valor (‘100’) carácter


estará en la posición 0 y el último (‘108’) en la
posición 8
9

INDEXACIÓN

>>> lista=[100,101,102,103,104,105,106,107,108]

 Para consultar u obtener elementos de una lista,


puedo, utilizar la posición del elemento entre
paréntesis cuadrados
 Por ejemplo, para la lista anterior
>>> print lista[2]
102
10

5
Fundamentos de Computación y Universidad de Santiago de Chile
Programación

ACCEDER A CARACTER
• Pero, ¿qué pasa si accedemos a posiciones
negativas?

• ¿O más allá del largo de la cadena?

• O incluso ¿valores flotantes?

¿Eso se puede?

11

OPERACIONES SOBRE LISTAS

 Además de consultar elementos sobre una lista,


es posible añadir elementos a ella utilizando el
método append()

>>> lista = [True, False, True]


>>> lista.append(True)
>>> print lista
[True, False, True, True]

 Este método permite agregar elementos al


final de una lista
12

6
Fundamentos de Computación y Universidad de Santiago de Chile
Programación

OPERACIONES SOBRE LISTAS

 También es posible modificar un valor, a partir de su


posición, simplemente usando el operador asignación

>>> lista = [True, False, True]


>>> lista[2] = False
>>> print lista
[True, False, False]

 De esta forma modificamos el valor del elemento


en una posición dada, al sobrescribir su valor
13

OPERACIONES SOBRE LISTAS

 Podemos eliminar una ocurrencia de un valor,


utilizando el método remove()

>>> lista = [True, False, True]


>>> lista.remove(True)
>>> print lista
[False, True]

 Con el uso de remove, eliminamos la primera


ocurrencia de un valor en la lista
14

7
Fundamentos de Computación y Universidad de Santiago de Chile
Programación

OPERACIONES SOBRE LISTAS

 Finalmente, podemos eliminar valores de la lista


por posición, utilizando el método pop()

>>> lista = [True, False, True]


>>> lista.pop(1)
False
>>> print lista
[True, True]

 De esta forma eliminamos un elemento de la


lista, en la posición que hemos entregado
15

RECORRIENDO LISTAS

 Cuándo tenemos que realizar cambios sobre


cada elemento de la lista tendremos que
iterar, a fin de revisar cada uno de los
elementos de ella
 Por lo que el while que vimos la clase pasada
nos será de utilidad nuevamente
 Sin embargo, ¿Cuál es la condición de parada
para recorrer una lista?
 ¿Me falta algún dato para poder realizar la
iteración?
16

8
Fundamentos de Computación y Universidad de Santiago de Chile
Programación

RECORRIENDO LISTAS
 Una forma común de iterar sobre listas es ir
recorriendo los índices desde el 0 hasta el último
índice, y para ello, necesitamos saber la cantidad
de elementos que una lista contiene

 Python para ello nos provee de la función len


que recibe una lista y entrega como resultado, el
número de elementos de ella

>>> lista=[100,101,102,103,104,105,106,107,108]
>>> len(lista)
9

17

RECORRIENDO LISTAS
 Analicemos el siguiente programa
# ENTRADA
lista=[100,101,102,103,104,105,106,107,108]

# PROCESAMIENTO
largo = len (lista)
i = 0
while i < largo :
lista[i] = lista[i] ** 2
i = i + 1

# SALIDA
print lista

 ¿Qué hace este programa? 18

9
Fundamentos de Computación y Universidad de Santiago de Chile
Programación

RECORRIENDO LISTAS
 ¿Que diferencia tiene la salida de este programa con el
anterior?

# ENTRADA
lista=[100,101,102,103,104,105,106,107,108]

# PROCESAMIENTO
largo = len (lista)
i = 0
while i < largo :
lista[i] = lista[i] ** 2
i = i + 1
# SALIDA
print lista[i],

19

CONSIDERACIONES FINALES

 Las listas son tipos de datos que permiten


representar y almacenar un sinnúmero de
abstracciones
 Además de los métodos vistos hoy, existen
métodos y funciones para ordenar, separar, y
realizar otras transformaciones de utilidad
sobre listas
 Con lo que aprendimos, ya es posible resolver
el ejercicio propuesto al inicio de la clase
20

10
Fundamentos de Computación y Universidad de Santiago de Chile
Programación

¿CONSULTAS?

11

También podría gustarte