연산자
파이썬은 산술연산자, 비교연산자, 할당연산자, 논리연산자, Bitwise 연산자, 멤버쉽연산자, Identity연산자를 지원한다.
1. 산술연산자
산술연산자에는 (1) 사칙연산자 +, -, *, / 와 (2) 제곱을 나타내는 **, (3) 나머지를 산출하는 % (Modulus), 그리고 (4) 나누기에 소숫점 이하를 버리는 // 연산자(Floor Division) 등이 있다.
5 % 2 # 1 5 // 2 # 2
2. 비교연산자
비교연산자는 관계연산자로도 불리우는데, 여기에는 등호(==), 같지 않음(!=), 부등호(<, >, <=, >=) 등이 있다.
if a != 1: print("1이 아님")
3. 할당연산자
할당연산자는 변수에 값을 할당하기 위하여 사용되는데, 기본적으로 = (Equal Sign)을 사용한다. 산술연산자와 함께 사용되어 할당을 보다 간결히 하기 위해 사용되는 +=, -=, *=, /=, %=, //= 등과 같은 연산자도 할당연산자에 해당된다.
a = a * 10 a *= 10 # 위와 동일한 표현
4. 논리연산자
논리연산자에는 and, or, not 이 있는데, and 는 양쪽의 값이 모두 참인 경우만 참이 되고, or 는 어느 한쪽만 참이면 참이된다. not 은 참이면 거짓으로 거짓이면 참이 된다. 아래 예제는 No가 출력된다.
x = True y = False if x and y: print("Yes") else: print("No")
5. Bitwise 연산자
Bitwise연산자에는 & (AND), | (OR), ^ (XOR), ~ (Complement), <<, >> (Shift)가 있는데, 이 연산자는 비트단위의 연산을 하는데 사용된다.
a = 8 # 0000 1000 b = 11 # 0000 1011 c = a & b # 0000 1000 (8) d = a ^ b # 0000 0011 (3) print(c) print(d)
6. 멤버쉽 연산자
멤버쉽연산자에는 in, not in 이 있는데, 이는 좌측 Operand가 우측 컬렉션에 속해 있는지 아닌지를 체크한다.
a = [1,2,3,4] b = 3 in a # True print(b)
6. Identity 연산자
Identity연산자에는 is, is not 이 있는데, 이는 양쪽 Operand가 동일한 Object를 가리키는지 아닌지를 체크한다.
a = "ABC" b = a print(a is b) # True