서비스 기획자의 성장기록

[Today I learned] 2024.01.04.목: Timedelta 소수점 없애기 본문

Today I leaned..

[Today I learned] 2024.01.04.목: Timedelta 소수점 없애기

Jenny Noh 2024. 1. 4. 12:11

📌 Timedelta 소수점 없애기

Datetime 끼리 연산을 하다보면 Timedelta 값이 소수점을 동반해서 반환될 때가 많다.

쓰는 사람도 불편하고 보는 사람도 불편해서 소수점 값을 제거해주고 싶다.

 

아래와 같은 Timedelta 값에서 초 단위 뒤에 붙은 .181818181을 제거해 줄 것이다.

 

가장 만만한 round 함수에 넣어봤다.

그래 이렇게 쉽게 될리 없지.

Timedelta는 round method가 정의되어있지 않다고 한다. TypeError가 뜬다..ㅎㅎ ㅠ

 

그래서 Timedelta값 뒤에 .을 찍어서 가용 함수 or 속성을 확인했다.

익숙한 이름 round가 있다.

 

docstring을 확인해보면 freq= 파라미터에 round resolution (어디단위까지 표기되길 원하는지)를 string type으로 전달해 주면된다.

 

Hour(시) 단위까지 round:

 

Minute(분) 단위까지 round:

🚨 이때 freq='M'으로 넣으면 month로 인식해서 에러가 뜬다! 주의!

 

Second(초) 단위까지 round:

 

Milisecond(밀리초) 단위까지 round: