2023.03.11

연산자

지난번에 변수 선언을 작성하였는데, 이제 해당 값들을 이용한 연산자들을 살펴보자.


사칙연산

사칙 연산은 +,-,/,* 로 처리하고, 정수 연산 이나 나눈 나머지에 대해서는 // (나눈 값 내림), %를 이용해서 계산한다. ** 는 거듭제곱을 표현한다.

해당 연산자들 바로 뒤에 = 을 붙이면 바로 변수에 할당할 수 있다.

a = 1
a += 2 # a==3


논리 연산

또한 논리적으로 and, or, not 을 지원하는데, 문자 그대로 사용하면 된다.

a = True
b = False

a and b # False
a or b # True
not b # True


비교 연산

비교 연산으로 <, >, ≥, ≤, ==, ≠ 이 있다. 앞의 연산자들은 값에 대해서 비교를 하고, 객체에 대한 비교로는 is 를 사용한다.

a = 1
b = 2
a < b # True

a is b # False
a is not b # True

객체를 비교하는 것에 대해서 처음에는 어려웠는데… 변수 위치를 알 수 있는 id()를 이용해서 같은 값이라면 True, 다르면 False를 반환한다. is의 경우 is None 과 같이 싱글톤과 비교하고 가독성 있게 코드를 쓰는 경우에만 거의 사용한다.


비트 연산

&, | ^, ~ <<, >> 가 지원된다.

1 & 1 # and 연산 return 10
1 | 0 # or 연산 return 1
1 ^ 1 # xor 연산 return 1 (xor은 두 값이 같은 경우에 1을 출력합니다.)
~1 # not 연산 return 0


포함 연산

그리고 그룹(?)과 관련해서 포함 관계를 나타내는 연산도 있다. in 이라는 연산자로 not 을 붙여서 포함하지 않는다 라는 연산으로도 사용할 수 있다.

[1,2,3,4] in 1 # True

[1,2,3,4] not in 5 # True 

Categories:

Updated:

Leave a comment