Python - AYUDA CON AGENDA PORFAVOR ES PEQUEÑA

 
Vista:
sin imagen de perfil
Val: 2
Ha aumentado su posición en 959 puestos en Python (en relación al último mes)
Gráfica de Python

AYUDA CON AGENDA PORFAVOR ES PEQUEÑA

Publicado por john (1 intervención) el 21/06/2021 00:16:12
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
'''
en la opcion buscar no se como mostrar un mensaje si no se encuentra el nombre indicado
def buscar():
    f = open('agenda.txt', 'r')
    print('Digite el nombre y apellido del beneficiario a buscar:')
    nombre=input()#nombre y apellido que se busca
    while 1:
        linea1 = f.readline()
        linea2 = f.readline()
        linea3 = f.readline()
        if linea1 == '':
            print ('no se encuentra')
            break
        if nombre == linea1[:-1]:
           print(linea1.rstrip("\n"))
           print(linea2.rstrip("\n"))
           print(linea3.rstrip("\n"))
    f.close()
    return ''
'''
def menu():
    print('Menu Principal')
    print('1. Ver listado')
    print('2. Ver Listado filtrado')
    print('3. Agregar beneficiario')
    print('4. Buscar beneficiario')
    print('5. Borrar beneficiario')
    print('6. Salir')
 
    option = input()
    return option
 
 
def buscar():
    f = open('agenda.txt', 'r')
    print('Digite el nombre y apellido del beneficiario a buscar:')
    nombre=input()#nombre y apellido que se busca
    while 1:
        linea1 = f.readline()
        linea2 = f.readline()
        linea3 = f.readline()
        if linea1 == '':
            print ('no se encuentra')
            break
        if nombre == linea1[:-1]:
           print(linea1.rstrip("\n"))
           print(linea2.rstrip("\n"))
           print(linea3.rstrip("\n"))
    f.close()
    return ''
 
def agregar():
    print ("Digite la información del beneficiario a agregar:")
    nombre = input()#'Ingrese nombre y apellido del contacto: ')
    apellido = input()#'Ingrese # cedula del contacto: ')
    telefono = input()#'Ingrese # celular del contacto: ')
    f = open('agenda.txt', 'a')
    f.write(nombre + '\n')
    f.write(apellido + '\n')
    f.write(telefono + '\n')
    print ('El beneficiario ha sido agregado')
    f.close()
 
def borrar_entrada():
    cedula=input("Digite la cedula del beneficiario a borrar:")
    f=open("agenda.txt", 'r')
    lista=[]
    for line in f:
        lista.append(line)
    f.close()
    for lin in lista:
        if lin.rstrip("\n")==cedula:
            linea=lista.index(lin)
            lista.pop(linea)
            lista.pop(linea-1)
            lista.pop(linea-1)
    f2=open("agenda.txt", 'w')
    for lin in lista:
        f2.write(lin)
    f2.close()
    print("El usuario ha sido eliminado del listado")
 
def buscarinicial():
    print("Digite la letra por la que empiezan los beneficiarios:")
    with open("agenda.txt", "r") as agenda:
        print("Listado filtrado de beneficiarios:")
        inicial=input()
        lista = [y for y in map(lambda x: x.rstrip(), agenda.readlines())]
        resultado= [lista[i:i+3] for i in range(0, len(lista), 3) if lista[i][0] == inicial]
        print('\n'.join(item for sublist in resultado for item in sublist))
 
def mostrar():
    print ("Listado de beneficiarios:")
    f = open ('agenda.txt','r')
    mensaje = f.read()
    print(mensaje.rstrip("\n"))
    f.close()
 
def opcion():
    while True:
        option = menu()
        if option == '1':
            mostrar()
        elif option =='2':
            buscarinicial()
        elif option =='3':
             agregar()
        elif option =='4':
            buscar()
        elif option =='5':
            borrar_entrada()
        elif option =='6':
            quit("Hasta Pronto")
 
f = open ('agenda.txt','w')
opcion()
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder