반응형

/와 //의 차이는 무엇일까?



파이썬에서는 /와 //의 차이가 분명히 난다.


하지만 보통 /를 많이 쓰지 //는 자주 쓰지 않는 경향이 있다.


이제 /와 //에 대해 한번 알아보도록 하자.



/와 //의 차이를 위해 아래 코드를 통해 바로 확인을 해보자.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
= 20
= 3
 
print("a/b :: ", a/b)
print("a//b :: ", a//b)
 
= 20.0
= 3
 
print("c/d :: ", c/d)
print("c//d ::", c//d)
 
//                                                       This source code Copyright belongs to Crocus
//                                                        If you want to see more? click here >>
Crocus



a / b를 하면 소수점이 나타나게 되지만 a // b는 소수점이 나타나지 않는다.


심지어 a // b는 나머지가 .6인데도 반올림을 하지 않고 버림을 하게 된다.


이와 같이 /의 특성은 부동 소수점을 표현해주지만


//의 특성은 나누기를 하되, 소수점을 내림해버리고 출력해준다.




아래 c // d를 할 때는 왜 6.0인가요? 


이는 파이썬에서는 float형과 int형이 연산될 때 무조건 float형을 따르게 되어있다.


소수점이 보기 싫다면 int(c//d)를 할 수 밖에없다.



이처럼 /와 //를 적절히 잘 이용하면 문제해결에서 내림이 필요한 경우 좋은 기능이 될 수 있다.

(만약 반올림을 하고자 한다면 round() 함수를 쓰도록 하자)




반응형