Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Contenedores mutables e inmutables en Python: conjuntos y diccionarios, Apuntes de Programación Informática

Los conceptos de conjuntos y diccionarios en python, explicando sus características y operaciones básicas, como pertenencia, comparación, unión, intersección, diferencia y asignación, entre otras. Además, se muestran ejemplos de su uso y se comparan con otros contenedores mutables e inmutables.

Tipo: Apuntes

2018/2019

Subido el 21/09/2019

deidara_
deidara_ 🇦🇷

3

(1)

9 documentos

1 / 43

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Curso: “Programador de Sistemas de
Interfaces Gráficas”
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b

Vista previa parcial del texto

¡Descarga Contenedores mutables e inmutables en Python: conjuntos y diccionarios y más Apuntes en PDF de Programación Informática solo en Docsity!

Curso: “Programador de Sistemas de

Interfaces Gráficas”

Contenedores:

Estructuras que permiten contener otros objetos

Contenedores. Conjuntos

Contenedor mutable de elementos inmutables , sin orden y

con una única ocurrencia de cada elemento (noción de conjunto de

matemáticas).

Representación literal: valores separados por comas entre llaves.

c = {3, 2, 1, 1, 1, 2, 3, 2, 3, 3, 1, 1, 3} c {1, 2, 3} c = {'A', 'E', 'I', 'O', 'U'} c {'I', 'E', 'A', 'U', 'O'} type(c) <class 'set'>

Contenedores. Conjuntos

La representación de un conjunto vacío no es la esperada:

c_vacio = {} type(c_vacio) <class 'dict'> # Cuidado: ¡No es conjunto! Es un diccionario. v = set() # conjunto vacío v set()

Contenedores. Conjuntos

Un conjunto puede crearse a partir de los elementos de cualquier

objeto iterable. A su vez, los conjuntos también son iterables.

vocales = set('aeiou') vocales {'o', 'e', 'i', 'a', 'u'} lista_dos = [2, 2, 'dos', 'dos', 2.0, 2.0] conj_uno = set(lista_dos) {2, 'dos'} set(range(7)) {0, 1, 2, 3, 4, 5, 6} set({1, 2, 3}) {1, 2, 3}

Contenedores. Conjuntos

Un conjunto puede crearse a partir de los elementos de cualquier

objeto iterable. A su vez, los conjuntos también son iterables.

vocales = set('AEIOU') for v in vocales: ... print(v) ... A I U

E O

Conjuntos. Operaciones

Comparación entre conjuntos

Dos conjuntos son iguales si todos los elementos del primero están
incluidos en el segundo y viceversa (es decir, los dos conjuntos poseen
exactamente los mismos elementos).

False

{1, 2 ,3} == {2, 1, 3} # El orden de los elementos no importa True {2, 3} != {1, 4} True {1, 2} != {1, 2} False

Conjuntos. Operaciones

Comparación entre conjuntos

Puede preguntarse si un conjunto está incluido en otro conjunto usando los

operadores de comparación <, <= , > y >=. El criterio es que un conjunto es

menor que otro si el primero está incluido en el segundo.

True

{1, 2} > {1, 2, 3} False {1, 2, 3} < {1, 2, 3} False {1, 2, 3} <= {1, 2, 3} True

Conjuntos. Operaciones

Unión:

set1 | set2 | … -> set

set1.union(iterable, …) -> set

La segunda alternativa admite cualquier iterable en lugar de que solamente sean conjuntos, como sucede en la primera alternativa.

{1, 2} | {2, 3} {1, 2, 3} {2, 4}.union({6, 8}) {8, 2, 4, 6} {2, 4}.union([6, 8]) {8, 2, 4, 6} {'a', 'b'} | {'c', 1} == {'a', 'b'}.union({'c', 1}) True

Conjuntos. Operaciones

Unión y asignación:

set1 |= set2 | …

set1.update(iterable, …)

Agrega a set1 todos los elementos de set2 y demás conjuntos o todos los proporcionados por los iterable s dados a update().

c = {1, 2} c |= {1, 4, 6} c

{1, 2, 4, 6}

c.update('abc', range(5)) c {0, 1, 2, 3, 4, 6, 'a', 'c', 'b'}

Conjuntos. Operaciones

Intersección y asignación:

set1 &= set2 & …

set1.intersection_update(iterable, …)

Deja en set1 sólo los elementos comunes a set1 , set2 y los demás conjuntos o todos los proporcionados por los iterable s dados a intersection_update().

c = { 1, 2, 3, 4, 5 } c &= {1, 5, 10} c {1, 5} c.intersection_update(range(-2, 2)) c {1}

Conjuntos. Operaciones

Diferencia:

set1 - set2 - … → set

set1.difference(iterable, …) → set

La segunda alternativa admite cualquier iterable en lugar de que solamente sean conjuntos, como sucede en la primera alternativa.

{1, 2, 3, 4} - {2, 3} {1, 4} {2, 4, 6}.difference([1, 2, 3]) {4, 6} {1, 2, 3} - {1, 2} == {1, 2, 3}.difference({1, 2}) True

Iteraciones. Iterables e iteradores

Iteraciones

La misma estructura for / in se puede usar para iterar sobre los valores

numéricos generador por range , sobre los caracteres de una cadena

de caracteres y sobre los elementos de una tupla

for x in range(10) ... print(x) for x in 'Una cadena': ... print(x) for x in (1, 2, 3): ... print(x)