python - 如何使用时间模块计算 Python 中两个日期之间的天数差?
问题描述
当我通过像 15-05-2020 和 16-06-2020 这样的日期时,它给出 2 但我想要 32 或 33
date1 = v_parking_in_date = input('Please Enter the Parking Start Date in dd-mm-yyyy format :')
date2 = v_parking_out_date = input('Please Enter the Parking Completion Date in dd-mm-yyyy format :')
date_1 = time.mktime(time.strptime(date1, "%d-%m-%Y"))
date_2 = time.mktime(time.strptime(date2, "%d-%m-%Y"))
d = (date_2 - date_1)
解决方案
您可以使用datetime模块来计算两个日期之间的增量:
import datetime as dt
import time
date1 = input('Please Enter the Parking Start Date in dd-mm-yyyy format :')
date2 = input('Please Enter the Parking Completion Date in dd-mm-yyyy format :')
date_1 = dt.date.fromtimestamp(time.mktime(time.strptime(date1, "%d-%m-%Y")))
date_2 = dt.date.fromtimestamp(time.mktime(time.strptime(date2, "%d-%m-%Y")))
d = date_2 - date_1 # datetime.timedelta(days=32)
首先,通过使用,time.mktime
您可以获得自您日期的纪元以来的秒数。然后通过使用datetime.date.fromtimestamp
,您可以date
在几秒钟内从此值创建一个对象。
推荐阅读
- regex - 正则表达式:查找不包含大括号的行
- python - 在另一个数组中创建“条纹”的开始和结束索引的二维 numpy 数组。
- powershell - 根据 CSV 中的电子邮件地址将用户移动到其他 OU
- c# - 在 Windows 10 的 TaskView 中停止 UWP 应用的屏幕截图
- html - 如何从 .ts 文件中插入 html 标签
- java - 如何使用“Content-type:application/x-www-form-urlencoded”发出 Okhttp 请求?
- spring - 没有在 AspectJ 中注册的 ServerProperties
- c# - 如何等到 DispatcherTimer 停止?
- r - R:for循环中日期类的双重性质
- sql - 如何在 SQL 中获取匹配的行并插入到多个表中