Conjuntos ejemplos

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# conjunto es una colección de elementos que no se repiten
 
lista=[1,2,1,2,1,2]
print(lista)
print(lista[2])
conjunto={1,2,1,2,1,2}
print(conjunto)
 
vacio=set()
vacio2={}
 
while True:
    num=int(input("Numero (0 para salir) "))
    if num!=0:
        vacio.add(num)
    else:
        break
 
print(vacio)
c3=set("hola amigo")
print(c3)
c4=set([1,2,3,3,2,1,4,4,3,2])
print(c4)
 
c1={1,2,3}
c2={2,3,4,"hola",6.78, False}
 
print(c1 | c2)
print(c1.union(c2))
print(c1 & c2)
print(c1.intersection(c2))
print(c1-c2)
print(c1.difference(c2))
 
clase_mates={"ana","eva","pep","rosa","juan"}
clase_fisica={"eva","albert","pep","maria"}
 
total_alumnos=clase_mates | clase_fisica
alumnos_dos_clases=clase_mates & clase_fisica
alumnos_mates_noen_fisica=clase_mates-clase_fisica
 
print(total_alumnos)
print(alumnos_dos_clases)
print(alumnos_mates_noen_fisica)
 
 
# Escribe un programa que tome una lista de palabras y
# elimine los duplicados, devolviendo una nueva lista sin duplicados.
 
def sin_duplicados(lista):
    res=[]
    for palabra in lista:
        if palabra not in res:
            res.append(palabra)
    return res
 
def sin_duplicados2(lista):
    conjunto=set(lista) # lo paso a conjunto, eliminan duplicados
    return list(conjunto)
 
print(sin_duplicados2(["hola","que","hola","que","pasa"]))
 
# Escribe un programa que tome una cadena de texto y cuente cuántas
# vocales diferentes (a, e, i, o, u) se encuentran en la cadena.
# Utiliza un conjunto para realizar el seguimiento de las vocales
# únicas encontradas.
 
def vocales(cadena):
    diferentes=set()
    for letra in cadena:
        if letra in "aeiou":
            diferentes.add(letra)
    return diferentes
 
print (vocales("hola que tal"))
 
alumnos=[
        {"nombre":"Ana",
        "asignaturas":{"fisica","mates"},
        "pagos":[20,50,60,70]
        },
         {"nombre": "Pep",
          "asignaturas": {"quimica", "mates"},
          "pagos": [20, 150, 60, 70]
          },
         {"nombre": "Eva",
          "asignaturas": {"fisica", "quimica"},
          "pagos": [20, 50, 60, 70]
          }
         ]
print(alumnos)
 
for alumno in alumnos:
    print(alumno["nombre"],sum(alumno["pagos"]))
# matricular a todos los alumnos en 'mates'
for alumno in alumnos:
    alumno["asignaturas"].add("mates")
 
print(alumnos)
 
for alumno in alumnos:
    for asignatura in alumno["asignaturas"]:
        print(alumno["nombre"],asignatura)
# crear un diccionario cuyas claves sean las asignaturas y el valor
# un conjunto de alumnos
asignaturas={}
for alumno in alumnos:
    for asignatura in alumno["asignaturas"]:
        if asignatura in asignaturas:
            asignaturas[asignatura].add(alumno["nombre"])
        else:
            asignaturas[asignatura]={alumno["nombre"]}
print(asignaturas)
 
total=0
pagos={}
# total de pagos de todos los alumnos
for alumno in alumnos:
    total+=sum(alumno["pagos"])
    pagos[alumno["nombre"]]=total
 
print(total)
print(pagos)

Publicado por

Juan Pablo Fuentes

Formador de programación y bases de datos