Publicado el Deja un comentario

Python. Graficas con Matplotlib

Introduccion a las graficas con Python, usando la libreria matplotlib.

import matplotlib.pyplot as plt

x=(4,8,13,15,23,24)
y=(50,62,84,80,35,43)
plt.plot(x,y,’b-.’)
plt.ylabel(‘Etiqueta Y’)
plt.xlabel(‘Etiqueta X’)
plt.axis([5,30,50,100])
plt.title(‘Mi grafica’)

#plt.scatter(x,y)
plt.show()

Please follow and like us:
Publicado el Deja un comentario

Python. Agenda de contactos

Crea una agenda de contactos y guardalos en un archivo csv que podras abrir con editor de textos o excel.
Para crear la agenda usaremos clases, funciones, metodos, etc.

El codigo utilizado es el siguiente:


# -*-coding:utf-8 -*-

"""
Created on Fri Dic 06 07:48:08 2019

@author: Jose
"""

#modulos
import csv
import itertools
import re

#clases
class Contacto:
nuevoId=itertools.count()
def __init__(self,nombre,apellidos,empresa,fijo,movil):
self.codigo=next(self.nuevoId)
self.nombre=nombre
self.apellidos=apellidos
self.empresa=empresa
self.fijo=fijo
self.movil=movil
class Agenda:
def __init__(self):
self.contactos=[]
def ordenarNombre(self):
self.contactos.sort(key=lambda contacto: contacto.nombre)
def ordenarApellidos(self):
self.contactos.sort(key=lambda contacto: contacto.apellidos)
def añadir(self,nombre,apellidos,empresa,fijo,movil):
contacto=Contacto(nombre,apellidos,empresa,fijo,movil)
self.contactos.append(contacto)
def mostrarTodos(self):
self.submenuOrden()
for contacto in self.contactos:
self.imprimeContacto(contacto)
def buscar(self,textoBuscar):
encontrado=0
for contacto in self.contactos:
if(re.findall(textoBuscar,contacto.nombre)) or (re.findall(textoBuscar,contacto.apellidos)):
self.imprimeContacto(contacto)
encontrado=encontrado+1
self.submenuBuscar(contacto.codigo)
if encontrado==0:
self.noEncontrado()
def borrar(self,codigo):
for contacto in self.contactos:
if contacto.codigo==codigo:
print('---*---*---*---*---*---*---*---*')
print('Quieres borrarlo? (s/n)')
print('---*---*---*---*---*---*---*---*')
opcion=str(input(""))
if opcion=='s' or opcion=='S':
print('Borrando contacto!!!')
del self.contactos[codigo]
elif opcion=='n' or opcion=='N':
break
def modificar(self,codigo):
for contacto in self.contactos:
if contacto.codigo==codigo:
del self.contactos[codigo]
nombre=str(input('Escribe el nombre: '))
apellidos=str(input('Escribe los apellidos: '))
empresa=str(input('Escribe la empresa: '))
fijo=str(input('Escribe el fijo: '))
movil=str(input('Escribe el movil: '))
contacto=Contacto(nombre.capitalize(),apellidos.capitalize(),empresa.capitalize(),fijo,movil)
self.contactos.append(contacto)
break
def submenuBuscar(self,codigo):
print('---*---*---*---*---*---*---*---*')
print('Quieres (m)odificarlo o (b)orrarlo? ')
print('---*---*---*---*---*---*---*---*')
opcion=str(input(""))
if opcion=='m' or opcion=='M':
self.modificar(codigo)
elif opcion=='b' or opcion=='B':
self.borrar(codigo)
else:
print('Continuamos sin realizar modificacion alguna')
def submenuOrden(self):
print('---*---*---*---*---*---*---*---*')
print('Quieres ordenar por (n)ombre o por (a)pellidos?')
print('---*---*---*---*---*---*---*---*')
opcion=str(input(""))
if opcion=='n' or opcion=='N':
self.ordenarNombre()
elif opcion=='a' or opcion=='A':
self.ordenarApellidos()

def grabar(self):
with open('agenda.csv','w') as fichero:
escribir=csv.writer(fichero)
escribir.writerow(('codigo','nombre','apellidos','empresa','fijo','movil'))
for contacto in self.contactos:
escribir.writerow((contacto.codigo,contacto.nombre,contacto.apellidos,contacto.empresa,contacto.fijo,contacto.movil))
def imprimeContacto(self,contacto):
print('---*---*---*---*---*---*---*---*')
print('---*---*---*---*---*---*---*---*')
print('Codigo: {}'.format(contacto.codigo))
print('Nombre: {}'.format(contacto.nombre))
print('Apellidos: {}'.format(contacto.apellidos))
print('Empresa: {}'.format(contacto.empresa))
print('Fijo: {}'.format(contacto.fijo))
print('Movil: {}'.format(contacto.movil))
print('---*---*---*---*---*---*---*---*')
print('---*---*---*---*---*---*---*---*')
def noEncontrado(self):
print('---*---*---*---*---*---*---*---*')
print('---*---*---*---*---*---*---*---*')
print('Contacto no encontrado')
print('---*---*---*---*---*---*---*---*')
print('---*---*---*---*---*---*---*---*')
def ejecutar():
agenda=Agenda()
try:
with open('agenda.csv','r') as fichero:
lector=csv.DictReader(fichero,delimiter=',')
for fila in lector:
agenda.añadir(fila['nombre'].capitalize(),fila['apellidos'].capitalize(),fila['empresa'].capitalize(),fila['fijo'].capitalize(),fila['movil'].capitalize())
except:
print('Error al abrir fichero o que no existe aun')
while True:
menu=str(input("""
\nSelecciona una opcion\n
1 Mostrar lista de contactos
2 Buscar contacto
3 Añadir contacto
0 Salir \n\n
"""))
if menu=='1':
agenda.mostrarTodos()
elif menu=='2':
texto=str(input('Escribe el texto a buscar en contactos: '))
agenda.buscar(texto.capitalize())
agenda.grabar()
elif menu=='3':
nombre=str(input('Escribe el nombre: '))
apellidos=str(input('Escribe los apellidos: '))
empresa=str(input('Escribe la empresa: '))
fijo=str(input('Escribe el fijo: '))
movil=str(input('Escribe el movil: '))
agenda.añadir(nombre.capitalize(),apellidos.capitalize(),empresa.capitalize(),fijo,movil)
agenda.grabar()
elif menu=='0':
print('Hasta pronto!!!')
agenda.grabar()
break
else:
print('Opcion no valida!!!')
if __name__=='__main__':
ejecutar()

Please follow and like us:
Publicado el Deja un comentario

Android. Sqlite comprobar campos

Crea metodos o funciones para comprobar si estan vacios o no los campos necesarios para evitar errores.


public boolean conpruebaCampos(){
String codigo=etId.getText().toString();
String nombre=etNo.getText().toString();
String email=etEm.getText().toString();
if (!codigo.equals("")&!nombre.equals("")&!email.equals("")){
return true;
}else{
return false;
}
}
public boolean conpruebaCodigo(){
String codigo=etId.getText().toString();

if (!codigo.equals("")){
return true;
}else{
return false;
}
}
public void borrarCampos(){
etId.setText("");
etNo.setText("");
etEm.setText("");
}

Please follow and like us:
Publicado el Deja un comentario

Android. Modificar Registro

Modificar registros de la base de datos sqlite


public void modificar(View v){
BaseSQLiteOpenHelper base = new BaseSQLiteOpenHelper(this,"agenda",null,1);
SQLiteDatabase bd = base.getWritableDatabase();
String codigo=etId.getText().toString();
String nombre=etNo.getText().toString();
String email=etEm.getText().toString();
ContentValues registro = new ContentValues();
registro.put("codigo",codigo);
registro.put("nombre",nombre);
registro.put("email",email);
int cant=bd.update("persona",registro,"codigo="+codigo,null);
bd.close();
if(cant==1){
Toast.makeText(this, "Se modifico el dato", Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(this, "No existe ese codigo", Toast.LENGTH_SHORT).show();
}
}

Please follow and like us:
Publicado el Deja un comentario

Android. Sqlite borrar registro

Ejemplo para borrar un registro de una base de datos sqlite en Android.


public void borra(View v){
BaseSQLiteOpenHelper base = new BaseSQLiteOpenHelper(this,"agenda",null,1);
SQLiteDatabase bd = base.getWritableDatabase();
String codigo=etId.getText().toString();
int cant=bd.delete("persona","codigo="+codigo,null);
bd.close();
etId.setText("");
etNo.setText("");
etEm.setText("");
if (cant==1){
Toast.makeText(this, "Se borro el registro", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(this, "No existe ese codigo", Toast.LENGTH_SHORT).show();
}
}

Please follow and like us: