반응형
두 날짜 사이의 날짜?
두 날짜 사이에 며칠이 지났는지 확인하는 가장 빠른 방법은 무엇입니까?제가 지금 하고 있는 일은 이렇습니다.
math.floor((b - a).total_seconds()/float(86400))
문자 그대로 두 개의 날짜 개체가 있다고 가정하면 다른 개체에서 하나를 빼고 결과 개체에 일 수를 쿼리할 수 있습니다.
>>> from datetime import date
>>> a = date(2011,11,24)
>>> b = date(2011,11,17)
>>> a-b
datetime.timedelta(7)
>>> (a-b).days
7
또한 날짜 시간에도 작동합니다. 가장 가까운 날짜로 반올림됩니다.
>>> from datetime import datetime
>>> a = datetime(2011,11,24,0,0,0)
>>> b = datetime(2011,11,17,23,59,59)
>>> a-b
datetime.timedelta(6, 1)
>>> (a-b).days
6
당신은 전체 달력의 날을 의미합니까, 아니면 24시간의 그룹을 의미합니까?
24시간 동안 Python의 datetime을 사용한다고 가정하면 timeelta 객체는 이미 days 속성을 가지고 있습니다.
days = (a - b).days
달력 날짜의 경우 a를 가장 가까운 날짜로 반올림하고 b를 가장 가까운 날짜로 반올림하여 양쪽의 부분적인 날짜를 제거해야 합니다.
roundedA = a.replace(hour = 0, minute = 0, second = 0, microsecond = 0)
roundedB = b.replace(hour = 0, minute = 0, second = 0, microsecond = 0)
days = (roundedA - roundedB).days
시도:
(b-a).days
A타입의 밴드와 함께 시도했습니다.datetime.date
.
다른 답변에 대한 내 의견을 참조합니다.이것이 제가 24시간과 달력 날짜를 기준으로 하루의 차이를 계산하는 방법입니다.days 속성은 24시간 동안 잘 작동하고 이 기능은 달력 검사에 가장 잘 작동합니다.
from datetime import timedelta, datetime
def cal_days_diff(a,b):
A = a.replace(hour = 0, minute = 0, second = 0, microsecond = 0)
B = b.replace(hour = 0, minute = 0, second = 0, microsecond = 0)
return (A - B).days
if __name__ == '__main__':
x = datetime(2013, 06, 18, 16, 00)
y = datetime(2013, 06, 19, 2, 00)
print (y - x).days # 0
print cal_days_diff(y, x) # 1
z = datetime(2013, 06, 20, 2, 00)
print (z - x).days # 1
print cal_days_diff(z, x) # 2
언급URL : https://stackoverflow.com/questions/8258432/days-between-two-dates
반응형
'programing' 카테고리의 다른 글
페이지 로드 후 Angular 4에서 (DOM) Element의 너비를 가져오는 방법 (0) | 2023.06.21 |
---|---|
계산된 속성에서 반환된 어레이의 개체 편집 중 (0) | 2023.06.21 |
사이드 메뉴 ionic 2를 보려면 스와이프 사용 안 함 (0) | 2023.06.16 |
하위 값별 Firebase 검색 (0) | 2023.06.16 |
UICollection 간격 여백 보기 (0) | 2023.06.16 |