1+ #1 Estructuras de datos soportadas por defecto en Python
2+
3+ # Listas (mutables, ordenadas)
4+ lista_numeros = [5 , 2 , 8 , 1 , 9 ]
5+ print ("Lista original:" , lista_numeros )
6+
7+ # Inserción
8+ lista_numeros .append (3 ) # Agrega al final
9+ lista_numeros .insert (2 , 7 ) # Inserta en una posición específica
10+ print ("Lista después de inserciones:" , lista_numeros )
11+
12+ # Borrado
13+ del lista_numeros [0 ] # Borra por índice
14+ lista_numeros .remove (8 ) # Borra por valor
15+ print ("Lista después de borrados:" , lista_numeros )
16+
17+ # Actualización
18+ lista_numeros [1 ] = 4
19+ print ("Lista después de actualización:" , lista_numeros )
20+
21+ # Ordenación
22+ lista_numeros .sort () # Ordena de forma ascendente
23+ print ("Lista ordenada:" , lista_numeros )
24+
25+ # Tuplas (inmutables, ordenadas)
26+ tupla_colores = ("rojo" , "verde" , "azul" )
27+ print ("\n Tupla original:" , tupla_colores )
28+
29+ # Conjuntos (mutables, no ordenados, sin duplicados)
30+ conjunto_frutas = {"manzana" , "pera" , "banana" }
31+ print ("\n Conjunto original:" , conjunto_frutas )
32+
33+ conjunto_frutas .add ("uva" ) # Inserción
34+ conjunto_frutas .remove ("pera" ) # Borrado
35+ print ("Conjunto después de operaciones:" , conjunto_frutas )
36+
37+ # Diccionarios (mutables, no ordenados, pares clave-valor)
38+ diccionario_edades = {"Ana" : 25 , "Carlos" : 30 , "Laura" : 22 }
39+ print ("\n Diccionario original:" , diccionario_edades )
40+
41+ diccionario_edades ["Pedro" ] = 35 # Inserción
42+ del diccionario_edades ["Carlos" ] # Borrado
43+ diccionario_edades ["Laura" ] = 23 # Actualización
44+ print ("Diccionario después de operaciones:" , diccionario_edades )
45+
46+ # Ejercicio
47+
48+ contactos = {} # Diccionario para almacenar los contactos
49+
50+ def agregar_contacto (nombre , telefono ):
51+ if nombre in contactos :
52+ print ("El contacto ya existe." )
53+ else :
54+ contactos [nombre ] = telefono
55+ print ("Contacto agregado exitosamente." )
56+
57+ def buscar_contacto (nombre ):
58+ if nombre in contactos :
59+ print (f"El número de teléfono de { nombre } es: { contactos [nombre ]} " )
60+ else :
61+ print ("El contacto no existe." )
62+
63+ def actualizar_contacto (nombre , nuevo_telefono ):
64+ if nombre in contactos :
65+ contactos [nombre ] = nuevo_telefono
66+ print ("Contacto actualizado exitosamente." )
67+ else :
68+ print ("El contacto no existe." )
69+
70+ def eliminar_contacto (nombre ):
71+ if nombre in contactos :
72+ del contactos [nombre ]
73+ print ("Contacto eliminado exitosamente." )
74+ else :
75+ print ("El contacto no existe." )
76+
77+ while True :
78+ operacion = input ("¿Qué deseas hacer? (agregar, buscar, actualizar, eliminar, salir): " )
79+
80+ if operacion == "agregar" :
81+ nombre = input ("Nombre del contacto: " )
82+ telefono = input ("Teléfono del contacto: " )
83+ agregar_contacto (nombre , telefono )
84+ elif operacion == "buscar" :
85+ nombre = input ("Nombre del contacto: " )
86+ buscar_contacto (nombre )
87+ elif operacion == "actualizar" :
88+ nombre = input ("Nombre del contacto: " )
89+ nuevo_telefono = input ("Nuevo teléfono del contacto: " )
90+ actualizar_contacto (nombre , nuevo_telefono )
91+ elif operacion == "eliminar" :
92+ nombre = input ("Nombre del contacto: " )
93+ eliminar_contacto (nombre )
94+ elif operacion == "salir" :
95+ break
96+ else :
97+ print ("Operación no válida." )
0 commit comments