올림, 내림, 반올림 하기
파이썬에 내장된 round() 함수는 2개의 인자를 받아서, 소수 몇째 자리에서 반올림을 할지를 결정해줄 수 있습니다.
하지만, math 라이브러리에서 제공하는 ceil(), floor() 함수는 무조건 소수 첫째 자리에서 올림 혹은 내림을 해줍니다.
따라서, round() 함수와 같이 2개의 인자를 받아서, 소수 몇째 자리에서 올림 혹은 내림을 해줄지 결정할 수 있는 사용자 정의 함수를 구현해 보았습니다.
import math
# 올림
def myCeil(number, ndigits):
number = number * math.pow(10, ndigits)
number = math.ceil(number)
number = float(number) / math.pow(10, ndigits)
return number
# 내림
def myFloor(number, ndigits):
number = number * math.pow(10, ndigits)
number = math.floor(number)
number = float(number) / math.pow(10, ndigits)
return number
# 반올림
round(number, ndigits)
python version: 3.7.13
반응형
'파이썬 > Code Solution' 카테고리의 다른 글
[Code Solution] 데이터프레임 특정 column/index 데이터 삭제하기 (0) | 2022.06.29 |
---|---|
[Code Solution] 데이터프레임 column/index 이름 변경하기 (0) | 2022.06.28 |
[Code Solution] 폴더(디렉토리) 생성하기 (0) | 2022.06.21 |
[Code Solution] Tensorflow, Keras 모델 동일한 결과 얻기 (0) | 2022.06.20 |
[Code Solution] 연속된 숫자들로 이루어진 부분 리스트 찾기 (0) | 2022.06.17 |