본문 바로가기
PYTHON/파이썬_라이브러리&모듈

파이썬 time/ datetime모듈

by 시에라177 2022. 5. 11.

time모듈

 

시간객체 생성가능

time.time()

-1970년 1월 1일 0시 0분 0초 이후로 현재까지 경과한 시간을 초로 변환하여 반환. 실수형타입

import time
time.time()

>>1652270415.005538

 

time.localtime(초)

-time()으로 받은 값을 온전한 날짜와 시간의 형태로 변환. 참고로 현 지역의 시간대로 변환해줌. 타입은 객체형

-구글 코랩환경에서 실행하면 코랩서버 시간기준으로 되나봄.

import time
time.localtime(time.time())

>>time.struct_time(tm_year=2022, tm_mon=5, tm_mday=11, 
tm_hour=12, tm_min=1, tm_sec=50, tm_wday=2, tm_yday=131, tm_isdst=0)

time.strftime()

-local타임으로 만든 객체를 원하는 포맷의 문자열로 출력하게 해주는 함수

-원하는 포맷은 구글링해보면 금방금방 찾음.

import time

a = time.localtime(time.time())
b = time.strftime('%Y-%m-%d-%a',a)
print(b)

>>2022-05-11-Wed
import time

a = time.localtime(time.time())
b = time.strftime('%Y-%m-%d-%a',a)
print("지금 시각은 : " + b)

>>지금 시각은 : 2022-05-11-Wed

time.asctime()

-localtime으로 받아온 시간을 알아보기 쉽게 변형해줌. 타입은 문자열

import time

time.asctime(time.localtime(time.time()))

>>Wed May 11 12:09:14 2022

time.ctime()

-지금 로컬 타임을 알려줌. 타입은 문자열

import time

time.ctime()
>>Wed May 11 12:10:01 2022

 

datetime모듈

datetime.datetime()으로 시간 객체 만들기

import datetime
dday = datetime.datetime(2022, 4, 4) //시 분 초 마이크로초도 넣을 수 있음
print(dday)

>>2022-04-04 00:00:00

datetime.datetime.strptime(문자열 시간, '포맷')

-문자열을 이용해 시간 객체만들기

import datetime
dday = datetime.datetime.strptime('2022-4-4', '%y-%m-%d') #이때 문자열 시간이랑 포맷이 일치해야함
print(dday)

>>2022-04-04 00:00:00

 

datetime의 시간객체. strftime('포맷')

시간객체를 문자열로 변환 - 많이씀

import datetime
dday = datetime.datetime.strptime('2022-4-4', '%Y-%m-%d') #시 분 초 마이크로초도 넣을 수 있음

dday_str = dday.strftime('%Y-%m')
print(dday_str)

>>2022-04

 

datetime.datetime.today()

import datetime
datetime.datetime.today()

>>datetime.datetime(2022, 5, 11, 12, 13, 14, 617727)

 

datetime.timedelta(days = , time = ,,,,weeks =, minute = 등등)

-두 시간의 차를 계산

import datetime 

d = datetime.datetime(2022, 5, 11)
d - datetime.timedelta(weeks = 2)

>>datetime.datetime(2022, 4, 27, 0, 0)
import datetime 

d = datetime.datetime(2022, 5, 11)
d2 = datetime.datetime(2022, 5, 5)

d - d2

>>datetime.timedelta(days=6)