# -*- coding: utf-8 -*-
#!/usr/bin/python
import pandas as pd
import os
import io
from io import open
def crear_el_fichero():#crea el fichero agenda.txt
fichero=open("agenda.txt","w",encoding="utf8")
menu()
fichero.close()
def ver_listado():#muestra listado por linea de todos
fichero=open("agenda.txt","r",encoding="utf8")
f=fichero.read()
print(f)
fichero.close()
def listado_filtrado():#pide inicial del beneficiario y lista todos los beneficiarios con esa inicial
busca=input('Dime la inicial por la que empieza el nombre de beneficiario: ')#pregunta por la inicial del beneficiario
with open("agenda.txt","r",encoding="utf8")as fichero:#abre el archivo en modo lectura como variable fichero
f=fichero.readlines()#almacenamos las lineas en lista en la variable f
lista=[]#creamos una lista vacia
for fileline in f:#recorremos las lista de las lineas del readline
fileline=fileline.replace('\n','')#reemplazamos salto de linea por nada
fileline=fileline.replace('\t','')#reemplazamos tabulaciones por nada
lista.append(fileline)#introducimos el recorrido en la lista que teníamos vacia
lista_iniciales_beneficiarios=[]#ahora creamos una lista para introducir las iniciales
for i in lista:#recorremos la lista de los nombres
i=i.split(',')
iniciales_beneficiarios=i[0][1]#sacamoslas iniciales de los nombre
lista_iniciales_beneficiarios.append(iniciales_beneficiarios)#los incluimos en la lista sólo de las iniciales
if busca in lista_iniciales_beneficiarios:#si la inicial preguntada está en la lista...
posicion=lista_iniciales_beneficiarios.index(busca)#en la variable posicion guardamos el indice que tiene en la lista
print(lista[posicion])#imprimimos esta posicion en la lista donde se encuentran los nombres completos
fichero.close()
menu()
def agregar_beneficiario():#agrega a los beneficiarios con pequeño cuestionario
lista=[]
nombre=input('Dime nombre y apellido del Beneficiario: ')
cedula=input('Escribe el numero de cedula con su letra separada de un guión: ')
telefono=int(input('Escribe el telefono del beneficiario: '))
fichero=open("agenda.txt","a",encoding="utf8")
fichero.write(' {}, {}, {}. '.format(nombre, cedula, telefono))
fichero.write('\n')
fichero.close()
menu()
def buscar_beneficiario():#busca beneficiarios según su numero de cedula(lista con los numeros de cedulas)
numero_cedula=input('escribe un espacio y el numero de cedula:')
with open("agenda.txt","r",encoding="utf8")as fichero:
f=fichero.readlines()
lista=[]
for fileline in f:
fileline=fileline.replace('\n','')
fileline=fileline.replace('\t','')
lista.append(fileline)
#print(lista)
lista_cedulas=[]
for i in lista:
i=i.split(',')
lista_cedulas.append(i[1])
if numero_cedula in lista_cedulas:
posicion=lista_cedulas.index(numero_cedula)
print('El numero de cedula {} pertenece al siguiente registro: {}\n'.format(numero_cedula,lista[posicion]))
menu()
else:
print('el numero de cedula {} no se encuentra en la lista de beneficiarios\n')
menu()
#print(lista_cedulas)
fichero.close()
def borrar_beneficiario():#orra beneficiario, su cédula y su numero de telefono
numero_cedula=input('escribe un espacio y el numero de cedula:')
with open("agenda.txt","r",encoding="utf8")as fichero:
f=fichero.readlines()
lista=[]
for fileline in f:
fileline=fileline.replace('\n','')
fileline=fileline.replace('\t','')
lista.append(fileline)
#print(lista)
lista_cedulas=[]
for i in lista:
i=i.split(',')
lista_cedulas.append(i[1])
if numero_cedula in lista_cedulas:
posicion=lista_cedulas.index(numero_cedula)
lista[posicion].remove()
print('beneficiario borrado')
def salir():#sale del proigrama
print('fin del programa')
def menu():#con esta funcion muestra el menú a elgir
print('''
1. Ver listado
2. Ver Listado filtrado
3. Agregar beneficiario
4. Buscar beneficiario
5. Borrar beneficiario
6. Salir
''')
respuesta=int(input('Dime que quieres hacer: '))
if respuesta==1:
ver_listado()
elif respuesta==2:
listado_filtrado()
elif respuesta==3:
agregar_beneficiario()
elif respuesta==4:
buscar_beneficiario()
elif respuesta==5:
borrar_beneficiario()
elif respuesta==6:
salir()
else:
print('Eso no es una opción')
respuesta=int(input('Dime que quieres hacer: '))
crear_el_fichero()#una vex creado podemos comentarlo para no estar creandolo todo el rato
menu()