파이썬 연산자

현서·2025년 1월 1일

파이썬

목록 보기
9/27
post-thumbnail

1. 산술 연산자

주로 수치 데이터 유형에 대한 기본 산술 연산을 수행하기 위해 사용된다.

+ : 더하기
- : 빼기
* : 곱하기
/ : 나누기
//: 몫 (정수 나누기)
% : 나머지
**: 지수 (거듭제곱)
print(10 + 3)
print(10 - 3)
print(10 * 3)
print(10 / 3)
print(10 // 3)
print(10 % 3)
print(10 ** 3)

13
7
30
3.3333333333333335
3
1
1000

2. 비교 연산자

  • 주로 두 값을 비교하는 데 사용
  • 결과는 항상 불리언(True 또는 False) 값
==: 동등
!=: 동등하지 않음
< : 작다
<=: 작거나 같다
> : 크다
>=: 크거나 같다
print(10 > 5)
print(10 < 5)
print(10 >= 5)
print(10 <= 5)
print(10 == 5)
print(10 != 5)

True
False
True
False
False
True

3. 할당 연산자

  • 변수에 값을 할당하는데 사용
  • 파이썬에서는 기본 할당 연산자 외에도 복합 할당 연산자를 제공하여 코드를 간결하게 작성할 수 있게 도와준다.
= : 할당
+= : 더하기 후 할당
-= : 빼기 후 할당
*= : 곱하기 후 할당
/= : 나누기 후 할당
//=: 몫 후 할당
%= : 나머지 후 할당
**=: 지수 후 할당
num = 10

num += 1    # num = num + 1
print(num)
num -= 1
print(num)
num *= 10
print(num)
num /= 10
print(num)
num %= 2
print(num)

11
10
100
10.0
0.0

4. 비트 연산자

  • 정수를 이진 비트로 표현했을 때 사용하는 연산자들
  • 각 연산자는 정수의 비트 단위로 동작
& : 비트 단위 AND
| : 비트 단위 OR
^ : 비트 단위 XOR
~ : 비트 단위 NOT
<< : 왼쪽 시프트
>> : 오른쪽 시프트
a = 60  # 111100
b = 13  # 001101

print(a & b)  # 비트가 모두 1일 때 결과가 1인 연산 : 12, 즉 1100
print(a | b)  # 비트가 둘 중 하나가 1이면 결과가 1인 연산 : 61, 즉 111101
print(a ^ b)  # 비트가 서로 다르면 1, 같으면 0인 연산 : 49, 즉 110001
# 비트를 반대로 바꿔주는 연산 -> 음수인 경우 2의 보수를 구함
print(~a)  # a - b -> a + (-b) . -(a + 1). ~a = -(60 + 1) = -61
print(a << 2)  # 240, 즉 11110000
print(a >> 2)  # 15, 즉 1111

12
61
49
-61
240
15

5. 논리 연산자

  • 주로 불린(Boolean) 값을 조작하기 위해 사용
  • 연산의 결과로 항상 True 또는 False만을 반환하는 것은 아니다.
  • 대신 마지막으로 평가된 피연산자의 값을 반환한다.
and: 논리 AND
or : 논리 OR
not: 논리 NOT
# and
print(True and 3)       # 3
print(3 and 5)         # 5
print(0 and 5)         # 0

# or
print(False or 3)      # 3
print(3 or 5)          # 3
print(0 or 5)          # 5

# not
print(not True)        # False
print(not 0)           # True
print(not 3)           # False

3
5
0
3
3
5
False
True
False

# and
print(True and True)
print(True and False)
print(False and True)
print(False and False)

a=10
b=5
result1 = a > b # True
result2 = a == b # False
print(result1 and result2) # False

True
False
False
False
False

# or
print(True or True)
print(True or False)
print(False or True)
print(False or False)

a=10
b=5
result1 = a > b # True
result2 = a == b # False
print(result1 or result2) # True

True
True
True
False
True

# not
print(not True)
print(not False)

a=10
b=5
result1 = not a > b # False
print(result1)

False
True
False

파이썬에서 불린(Boolean)으로 평가되는 주요 값

1. True로 평가되는 주요 값

  • 0이 아닌 모든 숫자 (양수, 음수 모두 포함)
  • 비어 있지 않은 문자열, 비어 있지 않은 리스트, 비어 있지 않은 튜플, 비어 있지 않은 세트, 비어 있지 않은 딕셔너리
  • True

2. False로 평가되는 주요 값

  • False
  • 0
  • 빈 문자열, 빈 리스트 [], 빈 튜플 (), 빈 세트 set(), 빈 딕셔너리 {}
  • None
bool(10)

True

bool(0)

False

bool('안녕하세요')

True

bool('')

False

bool('  ')

True

profile
The light shines in the darkness.

0개의 댓글