Python3로 알고리즘 문제를 풀게된다면 소수점 반올림 구하기 문제가 간혹 나옵니다.
round(number[, ndigits])
number 를 소수점 다음에 ndigits 정밀도로 반올림한 값을 돌려줍니다. ndigits 가 생략되거나 None 이면, 입력에 가장 가까운 정수를 돌려줍니다.
round() 를 지원하는 내장형의 경우, 값은 10의 -ndigits 거듭제곱의 가장 가까운 배수로 반올림됩니다; 두 배수가 똑같이 가깝다면, 반올림은 짝수를 선택합니다 (예를 들어, round(0.5) 와 round(-0.5) 는 모두 0 이고, round(1.5) 는 2 입니다). 모든 정숫값은 ndigits 에 유효합니다 (양수, 0 또는 음수). ndigits 가 생략되거나 None 이면, 반환 값은 정수입니다. 그렇지 않으면 반환 값은 number 와 같은 형입니다.
일반적인 파이썬 객체 number 의 경우, round 는 number.__round__ 에 위임합니다.
참고 float에 대한 round() 의 동작은 예상과 다를 수 있습니다: 예를 들어, round(2.675, 2) 는 2.68 대신에 2.67 을 제공합니다. 이것은 버그가 아닙니다: 대부분의 십진 소수가 float로 정확히 표현될 수 없다는 사실로부터 오는 결과입니다. 자세한 정보는 부동 소수점 산술: 문제점 및 한계 를 보세요.
위 설명은 파이썬 공식문서에서 round 내장함수에 대한 설명 입니다.
python3 round() 함수 사용법:
round(3.14) # 결과 : 3 /* 소수점 첫번째 반올림 */
round(3.1488,2) # 결과 : 3.14 /* 소수점 두번째 반올림 */
round(31.18,-1) # 결과 : 30.0 /* 일의 자리 반올림 */
주의사항 : 소수점 끝자리 0은 잘려서 나옵니다.
이에 대한 해결책은 아래 링크에서 확인해주세요.
'Python3' 카테고리의 다른 글
[Python3] 소수점 이하 자리수 출력하기 (0) | 2021.03.27 |
---|---|
[Python3]산술 연산자 정리 (0) | 2020.12.29 |
[Python3][Selenium] Selenium 활용해서 네이버 로그인 하기 (0) | 2020.12.15 |
[Python3][Selenium] Selenium 활용해서 인스타그램 로그인 하기 (0) | 2020.12.13 |
[Python3][Method] pop() 메소드 및 자료구조 (0) | 2020.12.13 |
최근댓글