작성
·
327
답변 1
0
안녕하세요 답변 도우미입니다.
파이썬에서 format()
함수를 사용할 때, ".1f"
는 소수점 첫째 자리까지 표시하라는 의미에요. 그런데 왜 1.25가 아니라 1.2로 나오는지는 부동소수점의 반올림 방식 때문이에요.
파이썬은 기본적으로 '반올림 반짝' 방식을 사용하지 않고, '짝수를 선호하는' 반올림을 해요. 이를 round half to even 또는 bankers' rounding이라고 부르죠. 이 방식은 반올림할 숫자가 정확히 중간값일 때, 즉 1.5나 2.5처럼 0.5로 끝날 때, 가장 가까운 짝수로 반올림을 하게 되요.
근데 우리의 경우에는 1.25가 있어서, 반올림하면 소수 첫째 자리에서 1.3이 되어야 할 것 같지만, 파이썬에서는 이걸 1.2로 처리해버리는 것입니다.
감사합니다.