# 파이썬 연산자
파이썬 프로그래밍에서 연산자는 피연산자(즉, 변수 및 값)에 대한 연산을 수행하는 데 사용됩니다.
파이썬은 연산자를 다음 그룹으로 분류합니다:
- 산술 연산자
- 할당 연산자
- 관계 연산자
- 논리 연산자
- 신원 연산자
- 멤버십 연산자
- 비트 연산자
# 1. 산술 연산자:
이러한 연산자는 숫자 값과 함께 일반적인 수학 연산을 수행하는 데 사용됩니다.
표 1: 파이썬의 산술 연산자
| 연산자 | 의미 | 예제 |
|---|---|---|
| + | 두 피연산자 더하기 | x + y |
| - | 왼쪽에서 오른쪽 피연산자 빼기 | x - y |
| * | 두 피연산자 곱하기 | x * y |
| / | 왼쪽 피연산자를 오른쪽 피연산자로 나눕니다 (항상 실수로 결과) | x / y |
| % | 모듈러스 - 왼쪽 피연산자를 오른쪽으로 나눈 나머지 | x % y |
| // | 바닥 나눗셈 - 숫자 선에서 왼쪽으로 조정된 정수로 나눈 결과 | x // y |
| ** | 지수 - 왼쪽 피연산자를 오른쪽의 거듭제곱으로 나눈 값 | x**y |
# 예제 1
\# 파이썬의 산술 연산자
x = 27
y = 4
print(x+y) # 더하기
print(x-y) # 빼기
print(x\*y) # 곱셈
print(x/y) # 나눗셈 (실수)
print(x%y) # 모듈러스
print(x//y) # 나눗셈 (정수)
print(x\*\*y) # 지수
# 출력:
31
23
108
6.75
3
6
531441
# 2. 할당 연산자:
이 연산자는 변수에 값을 할당하는 데 사용됩니다.
표 2: 파이썬의 할당 연산자
| 연산자 | 예제 | 다음과 같음 |
|---|---|---|
| = | x = 5 | x = 5 |
| += | x += 5 | x = x + 5 |
| -= | x -= 5 | x = x - 5 |
| *= | x *= 5 | x = x * 5 |
| /= | x /= 5 | x = x / 5 |
| %= | x %= 5 | x = x % 5 |
| //= | x //= 5 | x = x // 5 |
| **= | x **= 5 | x = x ** 5 |
| &= | x &= 5 | x = x & 5 |
| |= | x | = 5 |
| ^= | x ^= 5 | x = x ^ 5 |
| >>= | x >>= 5 | x = x >> 5 |
| <<= | x <<= 5 | x = x << 5 |
# 예제 2
\# 파이썬의 할당 연산자
x = 5
x = x + 5 # x += 5
print(x)
x = x - 5 # x -= 5
print(x)
x = x * 5 # x \*= 5
print(x)
x = x / 5 # x /= 5
print(x)
x = x % 5 # x %= 5
print(x)
# 출력:
10
5
25
5.0
0.0
# 3. 관계 연산자:
이 연산자는 두 값을 비교하는 데 사용됩니다.
표 3: 파이썬의 관계형 연산자
| 연산자 | 의미 | 예제 |
|---|---|---|
| > | Greater that - 왼쪽 피연산자가 오른쪽 피연산자보다 크면 참입니다(x > y). | |
| < | 그보다 작음 - 왼쪽 피연산자가 오른쪽 피연산자보다 작으면 참입니다 | x < y |
| == | 같음 - 두 피연산자가 같으면 참입니다 | x == y |
| != | 같지 않음 - 피연산자가 같지 않으면 참입니다 | x != y |
| >= | 다음보다 크거나 같음 - 왼쪽 피연산자가 오른쪽 피연산자보다 크거나 같으면 참입니다 | x >= y |
| <= | 다음보다 작거나 같음 - 왼쪽 피연산자가 오른쪽 피연산자보다 작거나 같으면 참입니다 | x <= y |
# 예제 3
\# 파이썬의 관계형 연산자
a = 10
b = 5
print(a>b) # True
print(a<b) # False
print(a==b) # False
print(a!=b) # True
print(a>=b) # True
print(a<=b) # False
# 출력:
True
False
False
True
True
False
# 4. 논리 연산자:
이 연산자는 조건문을 결합하는 데 사용됩니다.
표 4: 파이썬의 논리 연산자
| 연산자 | 의미 | 예제 |
|---|---|---|
| 피연산자가 모두 참인 경우 | x와 y가 모두 참이면 | True |
| 또는 | 피연산자 중 하나가 참이면 참 | x 또는 y |
| 피연산자가 거짓이면 참(피연산자를 보완함) | x가 아님 | 아닙니다. |
# 예제 4
# 파이썬의 논리 연산자
print("논리 AND : ", (10>5) 및 (9<7)) # False
print("논리 OR : ", (10>5) 또는 (9<7)) # True
print("논리 NOT : ", not(9<7)) # True
출력합니다:
논리 AND : False
논리 OR : True
논리 NOT : True
# 5. 동일성 연산자:
이 연산자는 객체가 동일한지 여부가 아니라 실제로 동일한 객체이며 메모리 위치가 동일한지 비교하는 데 사용됩니다.
표 5: 파이썬의 동일성 연산자
| 연산자 | 의미 | 예제 |
|---|---|---|
| is | 피연산자가 동일(동일한 객체 참조)한 경우 | is |
| is not | 피연산자가 동일하지 않은 경우(동일한 객체를 참조하지 않음) | x is not True |
# 예제 5
# 파이썬의 신원 연산자
print("Identity [연산자:-](연산자:-)")
x = True
print(x is True) # True
print(x is not True) # False
# 출력:
Identity [연산자:-](연산자:-)
True
False
# 6. 멤버십 연산자:
이 연산자는 시퀀스가 개체에 있는지 테스트하는 데 사용됩니다.
표 6: 파이썬의 멤버십 연산자
| 연산자 | 의미 | 예제 |
|---|---|---|
| in | 값/변수가 시퀀스에서 발견되면 참입니다 | 5는 x입니다 |
| not in | 시퀀스에서 값/변수를 찾을 수 없는 경우 참 | 5가 x가 아닌 경우 거짓 |
# 예제 6
# 파이썬의 멤버십 연산자
print("멤버십 [연산자:-](연산자:-)")
arr = [10, 20, 30, 40, 50]
x = 40
print(x in arr) # True
x = 60
print(x not in arr) # True
# 출력:
멤버십 [연산자:-TrueTrue](연산자:-TrueTrue)
# 7. 비트 단위 연산자:
이 연산자는 이진수를 비교하는 데 사용됩니다.
예를 들어, 아래 표에서 x = 10(이진 0000 1010)과 y = 4(이진 0000 0100)입니다.
표 7: 파이썬의 비트 단위 연산자
| 연산자 | 의미 | 예제 |
|---|---|---|
| & | 비트 단위 AND | x& y = 0 (0000 0000) |
| 비트 단위 OR | x | |
| ~ | 비트 단위 NOT | ~x = -11 (1111 0101) |
| ^ | Bit-wise XOR | x ^ y = 14 (0000 1110) |
| >> | 비트 단위 오른쪽 시프트 | x>> 2 = 2 (0000 0010) |
| << | 비트 단위 왼쪽 시프트 | x<< 2 = 40 (0010 1000) |
# 예제 7
# 파이썬의 비트 단위 연산자
x = 10
y = 4
print(x & y) # 비트 단위 AND: 0
print(x | y) # 비트 단위 OR: 14
print(~x) # 비트 단위 NOT: -11
print(x ^ y) # 비트 단위 XOR: 14
print(x>>2) # 비트 단위 오른쪽 시프트: 2
print(x<<2) # 비트 단위 왼쪽 시프트: 40
# 출력:
0
14
-11
14
2
40