Programación Web y Scripting > Python
como saber si una fecha es coorecta en python
(1/1)
joydivision27:
Buenas soy nuevo en este foro y quería haceros una preguntilla, estoy haciendo una práctica para clase de informática.
Estamos haciendo un programa en el que guardamos los datos de los alumnos para ello creamos una clase alumno con varias caracteristicas como nombre apellido etc. y tengo que hacer una función(osea un def) que me compruebe si la fecha tiene el formato correcto osea que tenga este formato :
DD/MM/AA independientemente del año que sea.
¿me podeis dar una pistilla?, es que soy novatillo aún en esto de python y he mirado varios tutoriales y no se me ocurre nada.
Gracias y saludos.
RadicalEd:
Lo puedes manejar con expresiones regulares, algo así.
--- Código: Python ---x = re.match('dd/dd/dd', '09/08/07')print x.group(0) Ya con eso te podrás guíar.
NRM:
--- Cita de: "joydivision27" ---Buenas soy nuevo en este foro y quería haceros una preguntilla, estoy haciendo una práctica para clase de informática.
Estamos haciendo un programa en el que guardamos los datos de los alumnos para ello creamos una clase alumno con varias caracteristicas como nombre apellido etc. y tengo que hacer una función(osea un def) que me compruebe si la fecha tiene el formato correcto osea que tenga este formato :
DD/MM/AA independientemente del año que sea.
¿me podeis dar una pistilla?, es que soy novatillo aún en esto de python y he mirado varios tutoriales y no se me ocurre nada.
Gracias y saludos.
--- Fin de la cita ---
espero este ejemplo te sea de utilidad.
--- Código: Python ---import reimport time def checkDate(date): regex = re.compile("(d{1,2})/(d{1,2})/(d{1,4})") match = regex.match(date) if match: day, month, year = match.groups() if len(year) == 4: format = "%d/%m/%Y" else: format = "%d/%m/%y" try: time.strptime(date, format) except ValueError: return False return True else: return False if __name__ == "__main__": toCheck = ["123sadasd123asdas", "14/12/1989", "44/12/1234", "10/19/1244", "13/2/2005", "24/12/1982", "12/12/09", "28/01/2008"] for item in toCheck: print "%s is valid? %s" % (item, checkDate(item))
saludos
nrm
joydivision27:
ok vere a ver, pero creo que buscaba algo mas sencillo,por que hay cosas que pones en el ejemplo que aún no he vvisto en clase,pero de todas formas gracias a los dos.Es que estamos haciendo un programilla en clase con una lista vacia de alumnos ahcedmos una clase estudiate al que le meytemos los parametros coorreo electroico,mnombre fecha etc. y todos esos datos estan en un archivo de texto que lo importas con otra funcion.
jejejeje. cuando lo tenga acabado pego un par de ejemplos por si el dia de mañana le sirven ah alguien
xD
joydivision27:
Bueno ya acabe el programa que estaba haciendo,gracias por todos aquellos que me alludaron,y como prometi ahi abajo dejo el codigo fuente entero por si a alguien le interesa hecharle un ojo o pueda ayudar a alguien si no se entiende alguna función,me escribis y la respondo,la verdad que soy novatillo pero le estoy cojiendo gustillo a esto del python.
bueno saludos y cuidaros.
http://www.rapidshare.de/files/48225412 ... e2.py.html
Navegación
Ir a la versión completa