如果我试着用“月份年”的形式来比较日期,而年份是不同的,那么月份的差异将是不正确的。如果我比较一下2016年1月到2017年3月,月差将是3,而不是14。有什么办法可以让月份增加到0?
import datetime
month_names = ["January", "February", "March", "April",
"May", "June", "July", "August",
"September", "October", "November", "December"]
months = {name : (index + 1) for index, name in enumerate(month_names)}
current_month = datetime.date.today().strftime('%B')
month_joined = input("Please enter the month you joined: ")
month_difference = abs(months[current_month] - months[month_joined])
current_year = int(datetime.date.today().strftime('%Y'))
year_joined = int(input('Please enter the year you joined: '))
year_due = year_joined + 1
year_difference = current_year - year_due月份差额没有考虑到这些年的差异。我尝试了一些解决方案,以忽略一个月的差异输入,并为每年投入12个月。确切地说,我需要月差。有什么想法吗?我很困惑。
发布于 2017-11-01 22:28:36
我不知道你所说的“将月数改为0”是什么意思,但你可以将year_difference * 12添加到month_difference,将2017年3月至2016年1月的地图绘制成地图。
https://stackoverflow.com/questions/47064420
复制相似问题