Python 两个用户输入日期之间的天数

Python 两个用户输入日期之间的天数,python,anaconda,Python,Anaconda,我正在尝试获取两个用户输入日之间的天数 这就是我所拥有的: import datetime now = datetime.datetime.now() print( now.day ) print( now.year ) print( now.month ) salario = float(input("¿Cuál es su salario mensual en colones? ")) print ("Fecha inicial de la incapacidad") dia1

我正在尝试获取两个用户输入日之间的天数

这就是我所拥有的:

import datetime

now = datetime.datetime.now()

print( now.day )

print( now.year )

print( now.month )

salario = float(input("¿Cuál es su salario mensual en colones? "))

print ("Fecha inicial de la incapacidad")
dia1 = int(input("Día: "))
mes1 = int(input("Mes: "))
ano1 = int(input("Año: "))
fecha1 = datetime.date(dia1, mes1, ano1)
print ("Fecha final de la incapacidad")
dia2 = int(input("Día: "))
mes2 = int(input("Mes: "))
ano2 = int(input("Año: "))
fecha2 = datetime.date(dia2, mes2, ano2)

diasinc = fecha2 - fecha2
print (diasinc.day)
根据输入的答案

我输入日期为2017年5月20日的dia1=20、mes1=5、ano1=2017

但我一直得到一个错误:一天超出了一个月的范围

谁能向我解释一下这个错误吗?你知道我怎样才能改变这个吗

先谢谢你

date按年、月、日的顺序获取参数。你以相反的顺序喂它们,这使得日期无效,你不能有2017年5月5日

试试看

fecha1 = datetime.date(ano1, mes1, dia1)
fecha2也是如此,日期的参数依次为年、月、日。根据您的输入,日期设置为2017年,这超出了一个月内天数的允许范围。这就是错误的原因

试试-

fecha1=datetime.dateano1,mes1,dia1


下一个也一样

谢谢!真不敢相信就这么简单呵呵。你知道我如何减去这两个日期,得到它们之间的天数吗?@IreneCastañeda与diasinc.days。对不起,当我试着这么做时,网站上说要等半个小时才能结束。