반응형
Python: 지정된 날짜의 시작 및 끝 데이터 제공
day = "13/Oct/2013"
print("Parsing :",day)
day, mon, yr= day.split("/")
sday = yr+" "+day+" "+mon
myday = time.strptime(sday, '%Y %d %b')
Sstart = yr+" "+time.strftime("%U",myday )+" 0"
Send = yr+" "+time.strftime("%U",myday )+" 6"
startweek = time.strptime(Sstart, '%Y %U %w')
endweek = time.strptime(Send, '%Y %U %w')
print("Start of week:",time.strftime("%a, %d %b %Y",startweek))
print("End of week:",time.strftime("%a, %d %b %Y",endweek))
print("Data entered:",time.strftime("%a, %d %b %Y",myday))
out:
Parsing : 13/Oct/2013
Start of week: Sun, 13 Oct 2013
End of week: Sat, 19 Oct 2013
Sun, 13 Oct 2013
지난 이틀 동안 파이썬을 배웠고 이것을 하는 더 깨끗한 방법이 있는지 궁금했습니다.이 방법은 효과가 있습니다... 보기 흉하고 각 날짜에 대해 새로운 시간 변수를 만들어야 하는 것은 어리석은 것 같습니다. 그리고 간단한 통화를 통해 주어진 날짜를 주 시작과 끝으로 상쇄하는 방법이 있어야 하지만 저는 인터넷이나 문서에서 효과가 있을 것 같은 어떤 것도 찾을 수 없었습니다.
사용datetime
모듈.
이렇게 하면 다음과 같은 주의 시작 및 끝(월요일부터 일요일까지)이 생성됩니다.
from datetime import datetime, timedelta
day = '12/Oct/2013'
dt = datetime.strptime(day, '%d/%b/%Y')
start = dt - timedelta(days=dt.weekday())
end = start + timedelta(days=6)
print(start)
print(end)
편집:
print(start.strftime('%d/%b/%Y'))
print(end.strftime('%d/%b/%Y'))
표준 시간 형식을 유지하고 현재 날짜를 참조하려면 약간의 변동이 있습니다.
from datetime import date, timedelta
today = date.today()
start = today - timedelta(days=today.weekday())
end = start + timedelta(days=6)
print("Today: " + str(today))
print("Start: " + str(start))
print("End: " + str(end))
진자 모듈을 사용합니다.
today = pendulum.now()
start = today.start_of('week')
end = today.end_of('week')
사용할 수도 있습니다.Arrow
:
import arrow
now = arrow.now()
start_of_week = now.floor('week')
end_of_week = now.ceil('week')
pip install pendulum
import pendulum
today = pendulum.now()
start = today.start_of('week')
print(start.to_datetime_string())
end = today.end_of('week')
print(end.to_datetime_string())
언급URL : https://stackoverflow.com/questions/19216334/python-give-start-and-end-of-week-data-from-a-given-date
반응형
'programing' 카테고리의 다른 글
SQLSTATE[42S22]:열을 찾을 수 없음: 1054 'where 절'의 'id' 알 수 없는 열(SQL: 'id'에서 * 선택 = 5 제한 1) (0) | 2023.07.22 |
---|---|
생성자 기능 대 공장 기능 (0) | 2023.07.22 |
왜 RabbitMQ 대신 셀러리를 사용합니까? (0) | 2023.07.22 |
Python 예약 단어 및 내장 목록을 라이브러리에서 사용할 수 있습니까? (0) | 2023.07.22 |
mysql 비교에 적합한 루비 날짜 시간 (0) | 2023.07.22 |