프로그래밍/Python

파이썬에서 시간 차이 구하기

민또배기 2023. 3. 9. 09:57
반응형

OS : Window10

Version : 3.10.10

 

파이썬에 있는 datetime 모듈을 통해 시간 데이터를 제어할 수 있습니다.

저는 여기서 현재 시간을 받아오기 위해 time 모듈을 추가하였습니다.

 

아래의 소스코드를 사용하면 현재 시간을 받아올 수 있습니다.

from datetime import datetime
import time


now = time.localtime()
fmt = '%Y-%m-%d %H:%M:%S'

nowTimestr = time.strftime(fmt, now)
print(nowTimestr)

여기서 nowTimestr을 가지고 +,- 와 같은 사칙연산을 하고 싶으시다면 strftime을 사용할 수 없습니다.

왜냐하면 strftime은 str형식이기 때문에 사칙연산이 되지 않습니다. 그러니 시간에 대한 사칙연산이 필요하다면 strptime을 사용하시면 됩니다. strptime은 datatime에 있습니다.

from datetime import datetime
import time


now = time.localtime()
fmt = '%Y-%m-%d %H:%M:%S'

nowTimestr = time.strftime(fmt, now)
nowTimestamp = datetime.strptime(nowTimestr, fmt)
pastTimestamp = datetime.strptime("2022-02-03 15:22:14", fmt)

print(nowTimestr)
print(nowTimestamp - pastTimestamp)

nowTimestamp와 pastTimestamp의 차에서 day, total_seconds등을 사용해서 좀 더 세분화 해서 사용도 가능합니다.

 

반응형