220 likes | 393 Views
Ayudantia Programación Python #5. Listas Tuplas Diccionarios Conjuntos. Diccionarios. Es un tipo de dato que asocia pares de objetos Es una colección de llaves las cuales tienen asociadas un valor. Las llaves no están ordenadas y no hay llaves repetidas.
E N D
Ayudantia Programación Python #5 Listas Tuplas Diccionarios Conjuntos
Diccionarios • Es un tipo de dato que asocia pares de objetos • Es una colección de llaves las cuales tienen asociadas un valor. Las llaves no están ordenadas y no hay llaves repetidas. • Para obtener un valor se debe hacerlo a través de su llave • X = { llave : valor } • Crear Diccionarios • Se crean usando llaves { }. La llave y el valor se separan por dos puntos • Diccionario vacio: {} o dict()
Uso de diccionarios • El valor asociado a una llave k en el diccionario dse obtiene mediante d[k] • llave = ‘Pepito’ , valor = 555237 • Si se utiliza una llave no presente : error • Agregar nueva llave: • Orden?
Uso de diccionarios • Si se asigna un valor a una llave ya asignada en el diccionario, se sobreescribe el valor. Un diccionario no puede tener llaves repetidas, pero si valores repetidos. • Borrar una llave: del d[k]
Diccionarios iterables • Diccionarios son iterables • Iterar sobre llaves • Iterar sobre valores: d.values() • Iterar sobre llaves y valores simultaneamentes: d.items()
Uso de diccionarios • Se pueden crear listas de llaves o valores • len(d) muestra cuantos pares llave-valor hay en d • Nuevo = { ‘uno’: 1 , ‘dos’:2 } • len(Nuevo) = 2 • k in d: ¿la llave k esta en el diccionario d? • k not in d : ¿la llave k no esta en d?
restricciones • Como las llaves de un diccionario son Inmutablesno se pueden utilizar listas como llaves (ya que las listas pueden modificar su valor) • Generalmente se usan numeros, tuplas y strings
Conjuntos • Colección desordenada de valores no repetidos • Son analogos a los conjuntos matematicos, y se representan por set. • set es mutable, una vez creado el conjunto, puede ser modificado • Creacion de Conjuntos • Literal (entre llaves): • Funcion set
Conjuntos • Conjunto vacío: set ( ) • Los elementos de un conjuntos deben ser inmutables (no se puede crear un conjunto de listas, si de tuplas) • Un conjunto NO es ordenado (no tiene sentido iterar sobre un índice) => • s = { ‘a’, ‘b’ , ‘c‘ } • S[0] • ERROR! (ya que esta desordenado) • Pero si se puede iterar con un for:
Operaciones sobre Conjuntos • s.add(x): agrega el elemento x al conjunto s • s.remove(x): elimina el elemento x del conjunto s (si el elemento x no esta en el conjunto, error!) • len (s): entrega el numero de elementos del conjunto s • x in s / x not in s: ¿el elemento x esta en el conjunto s?
Operaciones sobre Conjuntos • s^t: es la diferencia simétrica entre s y t; los elementos que están en s o en t, pero no en ambos • s < t: s es subconjunto de t • S <= t: s es subconjunto de t, pero este, toma el igual • &: intersección |: unión • s – t : es la diferencia entre s y t; son los elementos de s que no están en t
Operaciones sobre Conjuntos • s.discard(x): quita x del conjunto s • s.clear(): quitar todos los elementos de s • B.issuperset(a): si b es superconjunto de a • B.issubset(a): si b es subconjunto de a
Operaciones sobre Conjuntos • B=A.copy(): copia A en B • B=A: B es igual a A cualquier cambio en B afectara a A