Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Fundamentos de Programación CCPG1043: Unidad 6 - Colecciones
Fundamentos de Programación CCPG1043: Unidad 6 - Colecciones
CCPG1043
Unidad 6 – Colecciones
Agenda
6.1 Tipos de colecciones y sus características.
6.2 Operaciones con colecciones.
Objetivos
• Identificar los diferentes tipos de colecciones para representar datos
relacionados.
• Usar un tipo de colección para resolver un problema que involucre
manejo de datos.
• Utilizar colecciones anidadas para resolver problemas complejos.
• Aplicar algoritmos receta para resolver problemas que utilicen
colecciones dentro de un programa.
6.1 – Tipos de colecciones y sus
características
Colecciones
Listas
Tuplas
Conjuntos (Sets)
Diccionarios
Tuplas
Tuplas
Acceso a elementos:
>>> tupla[0]
Índice
Devuelve: 'a'
>>> tupla[−1]
Devuelve: 11
>>> tupla[1:3]
Slicing
Devuelve: ('b', 'c')
Tuplas
• No pueden eliminarse elementos de una tupla.
• Las tuplas son inmutables.
• Las tuplas no tienen los métodos remove ni pop.
>>> list(tupla)
Tuplas
TIP:
Pensemos en las tuplas como una lista constante.
Tuplas
Empaquetando y desempaquetando datos
#desempaquetado
>>> x, y, z = t
def f(r):
""" Return (circumference, area) of a circle of radius r
""“
c=2*math.pi*r
a=math.pi*r*r
return (c, a)
#Definición directa
>>> u= {4,6,1,3,8,6}
>>> set("obtuse")
set(['b', 'e', 'o', 's', 'u', 't'])
Conjuntos
>>> 6 in s
False
>>> 6 not in s
True
Conjuntos: Pertenencia
También se puede verificar la pertenencia de conjuntos enteros.
Si nos dan dos subconjuntos, podemos verificar si el primero es un
subconjunto del segundo o superconjunto.
>>> s
set([32, 9, 12, 14, 54, 26])
Modificando Conjuntos: Eliminar Elementos
• pop
• remove
• discard
• clear
Modificando Conjuntos: Eliminar Elementos
>>> s = set([1,2,3,4,5,6])
>>> s.pop()
1
>>> s
set([2,3,4,5,6])
Modificando Conjuntos: Eliminar Elementos
La función remove elimina un elemento específico. (no lo retorna)
>>> s.remove(3)
>>> s
set([2,4,5,6])
>>> s.clear()
>>> s
set([])
Conjuntos : Operaciones
#INTERSECCION
>>> A & B
{4, 5}
>>> A.intersection(B)
{4, 5}
>>> B.intersection(A)
{4, 5}
Conjuntos: Operaciones
>>> A = set([1, 2, 3, 4, 5])
>>> B = set([4, 5, 6, 7, 8])
# UNION
>>> A | B
{1, 2, 3, 4, 5, 6, 7, 8}
>>> A.union(B)
{1, 2, 3, 4, 5, 6, 7, 8}
>>> B.union(A)
{1, 2, 3, 4, 5, 6, 7, 8}
Conjuntos: Operaciones
>>> A = set([1, 2, 3, 4, 5])
>>> B = set([4, 5, 6, 7, 8])
#DIFERENCIA
>>> A - B
{1, 2, 3}
>>> A.difference(B)
{1, 2, 3}
>>> B - A
{8, 6, 7}
Conjuntos: Operaciones
#DIFERENCIA SIMETRICA
>>> A ^ B
{1, 2, 3, 6, 7, 8}
>>> A.symmetric_difference(B)
{1, 2, 3, 6, 7, 8}
>>> B.symmetric_difference(A)
{1, 2, 3, 6, 7, 8}
Ejercicios