개발일기 [Python 파이썬]

[Python datetime]

neullo 2024. 2. 21. 14:23

 

time / 시간 다루기

파이썬에서 start _time과 end_time까지 얼마나 걸렸는지, 코드의 실행속도를 측정한다던지, time sleep을 이용해 코드를 () 안에 들어간 숫자만큼 중지시킬 때 사용.

import time

start_time = time.time() # 현재 시간 저장

time.sleep(1) # 1초간 대기

end_time = time.time()

# 코드가 종료된 시간 - 코드가 시작된 시간으로 실행 시간 구하기 (단위 : 초)
print(f"코드 실행 시간 : {end_time-start_time:.5f}") # 코드 실행 시간 : 1.00100

.5f 는 소수점 5까지 보겠다는 의미


datetime / 날짜 다루기

datetime.now()는 datetime 클래스

from datetime import datetime, timedelta

# 현재 날짜 및 시간 출력
print(datetime.now()) # 2023-02-22 15:55:32.277095

# datetime의 format code 더 제세한건 여기서 확인 가능합니다.
'''
%y : 두 자리 연도 / 20, 21, 22
%Y : 네 자리 연도 / 2020, 2021, 2022
%m : 두 자리 월 / 01, 02 ... 11 ,12
%d : 두 자리 일 / 01, 02 ...  30, 31
%I : 12시간제 시간 / 01, 02 ... 12
%H : 24시간제의 시간 / 00, 01 ... 23
%M : 두 자리 분 / 00, 01 ... 58, 59
%S : 두 자리 초 / 00, 01 ... 58, 59
'''

 

 

# string을 datetime 날짜로 변경하기

string_datetime = "23/12/25 13:20"
datetime_ = datetime.strptime(string_datetime, "%y/%m/%d %H:%M")
print(datetime_) # 2023-12-25 13:20:00

 

 


SPLIT
# datetime 날짜를 string으로 변환하기

공백으로 split 하고 싶다 하면 datetime.now에 str을 사용해서 문자열로 형 변환을 해주면 날짜와 시간이 잘 분리 된 것을 볼 수 있다. DATE TIME 다룰 때 날짜형태인지, 문자열 형태인지 주의해서 사용해야 함. 

 


#strptime 

sstrptime 사용해서 string문자를 datetime 날짜로 변경하기

 

#strftime 

strftime 사용해서 datetime 날짜를  string 문자열로 변경하기

 

 

특정날짜 더하고 빼기

# 3일 전 날짜 구하기
three_days_ago = datetime.now() - timedelta(days=3)
print(three_days_ago) # 2023-02-19 16:27:52.526502