반내림 vs 내림(Python3)

이 글은 파이썬 3 기준으로 작성되었다.

나누기 연산

/

'/' 연산자는 나머지도 포함된 일반적인 나누기를 수행한다.

//

'//' 연산자는 소수 나머지 부분을 잘라내고, 정수 피연산자에 대해서는 정수를 반환하며, 부동 소수점 피 연산자가 하나라도 있는 경우에는 부동 소수점 수를 반환하는 반내림(Floor)를 수행한다.

반내림 vs 버림

// 연산자는 비공식적으로 버림(truncating) 나누기라고 불리지만, 반내림(Floor)나누기 라고 부르는 것이 더 정확하다. // 연산자는 낮은 값을 기준으로 나눈 결괏값의 소수 부분을 잘라낸다. 즉 / 나누기 결과에서 가까운 낮은 정수값을 의미한다.
이는 단순히 소수 부분을 잘라내는 것과는 차이가 존재한다. 특히 음수 값에 적용될 때 더 중요하다.
이 차이는 math 모듈을 사용하여 확인할 수 있다.

import math

# 낮은 값 중에서 가장 가까운 수
math.floor(2.5)     
#--==>> 2
math.floor(-2.5)
#--==>> -3

# (0을 향해서) 소수 부분 잘라 내기
math.trunc(2.5)
#--==>> 2
math.trunc(-2.5)
#--==>> -2
5 / 2, 5 / -2
#--==>> (2.5, -2.5)
5 // 2, 5 // -2
#--==>> (2, -3)

 

 

 

'Python > Python' 카테고리의 다른 글

Python에서 집합을 사용하는 이유  (0) 2023.01.10
불변성과 문자열 수정  (0) 2023.01.06
컴프리헨션  (0) 2022.12.28
__name__  (0) 2022.11.16
파이썬(Python), 파이참(PyCharm) 설치(windows)  (0) 2021.07.24