Python

연산자

gudwns5533 2026. 5. 22. 17:07

연산자는 값을 계산하거나 비교하고, 논리적인 판단을 수행하기 위해 사용하는 기호로, 데이터 간의 연산을 간결하게 표현할 수 있게 해준다.

1. 산술 연산자

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

  • + : 더하기
  • - : 빼기
  • * : 곱하기
  • / : 나누기
  • //: 몫 (정수 나누기)
  • % : 나머지
  • **: 지수 (거듭제곱)
print(10 + 3)   # 13
print(10 - 3)   # 7
print(10 * 3)   # 30
print(10 / 3)   # 3.3333333333335     # 나누기 연산은 결과가 무조건 실수로 출력
print(10 // 3)  # 3
print(10 % 3)   # 1
print(10 ** 3)  # 1000

# 산술 연산중 입력값 중에 실수가 하나라도 있다면 결과값도 실수로 출력

2. 비교 연산자

주로 두 값을 비교하는 데 사용되며, 그 결과는 항상 불리언(True 또는 False) 값.

  • ==: 동등
  • !=: 동등하지 않음
  • < : 작다
  • <=: 작거나 같다
  • > : 크다
  • >=: 크거나 같다
print(10 > 5)    # True
print(10 < 5)    # False
print(10 >= 5)   # True
print(10 <= 5)   # False
print(10 == 5)   # False
print(10 != 5)   # True

3. 할당 연산자

변수에 값을 할당하는데 사용. 파이썬에서는 기본 할당 연산자 외에도 복합 할당 연산자를 제공하여 코드를 간결하게 작성할 수 있게 도와줌.

  • = : 할당
  • += : 더하기 후 할당
  • -= : 빼기 후 할당
  • *= : 곱하기 후 할당
  • /= : 나누기 후 할당
  • //=: 몫 후 할당
  • %= : 나머지 후 할당
  • **=: 지수  할당
num = 10

num += 1               # num = num + 1
print(num)   # 11
num -= 1
print(num)   # 10
num *= 10
print(num)   # 100
num /= 10
print(num)   # 10.0
num %= 2
print(num)   # 0.0

4. 비트 연산자

비트 연산자는 정수를 이진 비트로 표현했을 때 사용하는 연산자. 각 연산자는 정수의 비트 단위로 동작.

  • & : 비트 단위 AND
  • | : 비트 단위 OR
  • ^ : 비트 단위 XOR
  • ~ : 비트 단위 NOT
  • << : 왼쪽 시프트
  • >> : 오른쪽 시프트
a = 60  # 111100
b = 13  # 001101

print(a & b)   # 12,  즉 1100
print(a | b)   # 61,  즉 111101
print(a ^ b)   # 49,  즉 110001
print(~a)      # -61
print(a << 2)  # 240, 즉 11110000
print(a >> 2)  # 15,  즉 1111

5. 논리 연산자 (중요)

논리 연산자는 주로 불린(Boolean) 값을 조작하기 위해 사용. 파이썬의 논리 연산자는 다른 언어와는 다르게, 연산의 결과로 항상 True 또는 False만을 반환하지 않음. 대신 마지막으로 평가된 피연산자의 값을 반환함.

  • and: 논리 AND
  • or : 논리 OR
  • not: 논리 NOT
a = True
b = False

# AND 연산 (둘 다 True일 때만 True)
print('a and b:', a and b)

# OR 연산 (하나라도 True이면 True)
print('a or b:', a or b)

# NOT 연산 (값을 반대로)
print('not a:', not a)
print('not b:', not b)

'''
a and b: False
a or b: True
not a: False
not b: True
'''
# and                  # and연산은 두 값이 True일 경우에는 연산자 뒤의 값이 출력, 앞의 값이 False일때는 뒤로 넘어가지않고 출력
print(True and 3)      # 3
print(3 and 5)         # 5
print(0 and 5)         # 0

# or                   # or연산은 앞의 값이 True면 바로 출력, 앞의 값이 False일 경우 뒤의 값이 True인지 판별 후 출력
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

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

1. True로 평가되는 주요 값

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

2. False로 평가되는 주요 값

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