Python round() 함수로 소수점 두 자리까지 반올림하기
Python의 내장 함수인 round()는 두 개의 인자를 받습니다. 첫 번째 인자는 반올림할 숫자이고, 두 번째 인자는 반올림할 소수점 자릿수를 결정합니다.
숫자를 소수점 두 자리까지 반올림하려면 두 번째 인자로 2를 전달하면 됩니다. 이때 소수점 셋째 자리 숫자가 5보다 크면 마지막 자리 숫자가 1 증가합니다.
>>> round(1.4756, 2) 1.48 >>> round(1.3333, 2) 1.33
위 예제에서 round(1.4756, 2)는 소수점 셋째 자리인 5에 의해 올림되어 1.48을 반환하고, round(1.3333, 2)는 셋째 자리가 3이므로 그대로 1.33을 반환합니다.
참고: 실제 '내림'이 필요한 경우
round() 함수는 가장 가까운 값으로 반올림(사사오입)을 수행하며, 항상 아래 방향으로 잘라내는 '내림'과는 다릅니다. 무조건 내림해야 한다면 math 모듈의 floor() 함수를 사용하세요.
>>> import math >>> math.floor(1.4756 * 100) / 100 1.47
또한 Python 3의 round()는 오사오입이 아닌 '은행원 반올림(banker's rounding)' 방식을 사용하므로, 정확한 소수 계산이 필요하다면 decimal.Decimal 모듈 활용도 고려해 볼 수 있습니다.