Python - Comparar Fechas (python)

   
Vista:

Comparar Fechas (python)

Publicado por Ricardo (5 intervenciones) el 01/07/2016 20:36:22
Hola amigos!
necesito ayuda, necesito hacer que el usuario ingrese una fecha y que el resultado deberá arrojar si la fecha ingresada por el usuario es mayor a la actual, para que se pueda realizar un despacho. Estaré atento a sus comentarios, les dejare un avance según a la idea que tuve, pero no se en que fallo. Saludos!


1
2
3
4
5
6
7
8
9
10
11
12
13
14
fechaD=input("Ingrese la fecha de entrega (ddmmyyyy): ")
fechaD=fechaD.strip()
Largofecha=len(fechaD)
if(Largofecha>0 and Largofecha==8):
	ahora = time.strftime("%d-%m-%Y")
	dtfechaD=datetime.strptime(fechaD, "%d%m%Y")
	fechaFinal=dtfechaD.strftime("%d-%m-%Y")
	print(fechaFinal)
	if(fechaFinal>=ahora):
		print("si")
	else:
		print("no")
else:
	print("error: ingrese bien la fecha")
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

Comparar Fechas (python)

Publicado por Horacio (18 intervenciones) el 02/07/2016 03:19:58
Buenas fijate si te sirve?

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
from datetime import date
 
def diferencia(fecha1, fecha2):
    return (fecha2 - fecha1).days
 
def str_to_date(fecha):
    dia = int(fecha[:2])
    mes = int(fecha[2:4])
    anio = int(fecha[4:])
    return date(anio, mes, dia)
 
def main():
    while True:
        fecha_entrega = raw_input("Ingrese la fecha de entrega (ddmmyyyy): ").strip()
        largo_fecha = len(fecha_entrega)
        if largo_fecha > 0 and largo_fecha == 8:
            f1 = date.today()
            f2 = str_to_date(fecha_entrega)
            result = diferencia(f1, f2)
            if result > 0:
            # fecha correcta
                break
            elif result < 0:
                print "Ingrese una fecha posterior a {0}".format(f1)
        else:
            print "Formato de fecha incorrecto!!"
 
main()
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar