본문 바로가기
파이썬

파이썬 연산

by 코낄2 2023. 9. 7.

연산자?

연산자란 기능이 있는 특수문자를 의미합니다.

***연산자의 우선순위

[최우선 연산자 > 단항 연산자 > 산술 연산자 > 쉬프트 연산자 > 관계 연산자 > 논리 연산자 > 삼항 연산자 > 대입 연산자]

하나의 수식에 같은 우선순위의 연산자들이 여러개 나올 때, 알맞는 방향으로 결합되어 연산되는 결합성이 있다.

 

1. 산술 연산자

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

print(10 + 3)                   
print(10 - 3)                        
print(10 * 3)
print(10 / 3)
print(10 // 3)    # 몫
print(10 % 3)  # 나머지
print(10 ** 3)  # 거듭제곱

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)

num -= 1   # num = num - 1
print(num)

num *= 10

print(num)

num /= 10
print(num)

num %= 2
print(num)

4. 비트 연산자

비트 연산자는 정수를 이진 비트로 표현했을  사용하는 연산자들입니다 연산자는 정수의 비트 단위로 동작합니다.

a = 60  # 111100
b = 13  # 001101

print(a & b) # 두개의 부호가 모두 1이면 True (1) 다르면 False (0)
print(a | b) # 둘 중 하나라도 True(1)면 True(1) 모두 0이면 False (0)
print(a ^ b) # 두개의 부호가 다르면 True 같으면 False
print(~a) # -61, 이 결과는 2의 보수 방식 때문
print(a << 2) # 자리를 두칸 왼쪽으로. 11110000
print(a >> 2) # 자리를 두칸 오른쪽으로 1111

5. 논리 연산자

파이썬에서의 논리 연산자는 주로 불린(Boolean) 값을 조작하기 위해 사용됩니다그러나 파이썬의 논리 연산자는 다른 언어와는 다르게연산의 결과로 항상 True 또는 False만을 반환하는 것은 아닙니다대신 마지막으로 평가된 피연산자의 값을 반환합니다.

num1 = 10
num2 = 5
result1 = num1 > num2     # True
result2 = num1 == num2    # False


print(result1 and result2)   >> False
print(result1 or result2)      >> True
print(not result1)                >> False
print(True and 3)    >>    # 마지막으로 평가된 피연산자의 값을 반환.
print(3 and 5)         >> 5
print(0 and 5)       >> 0  # 앞이 false면 false로 연산이 끝나기 때문에 0 반환.
print(False or 3)   >> 3
print(3 or 5)          >> 3   # 앞의 연산이 true면 뒤 연산을 볼 필요 없기 때문에 연산 끝.
print(0 or 5)          >> 5
print(not True)        # False
print(not 0)           # True
print(not 3)           # False

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

1. True로 평가되는 주요 값

  • Boolean: True
  • 0을 제외한 숫자
  • 문자열과 바이트 문자열: 단, 빈 문자열 '' 및 b'' 제외
  • 모든 리스트, 튜플, 세트, 딕셔너리: 단, 빈 컨테이너 제외

2. False로 평가되는 주요 값

  • Boolean: False
  • 숫자: 0 
  • 문자열: 빈 문자열 '' 및 빈 바이트 문자열 b''
  • 리스트, 튜플, 세트: 빈 리스트 [], 빈 튜플 (), 빈 세트 set()
  • 딕셔너리: 빈 딕셔너리 {}
  • None: 파이썬의 None 객체도 False로 평가됩니다.
print(bool(10))                           >>True
print(bool(-1))                            >>True
print(bool('안녕 난 김사과야'))   >>True
print(bool(0))                             >>False
print(bool([]))                             >>False
print(bool(None))                      >>False

'파이썬' 카테고리의 다른 글

제어문-반복문  (0) 2023.09.08
제어문- 조건문  (0) 2023.09.07
파이썬 컬렉션{딕셔너리}  (0) 2023.09.06
파이썬 컬렉션{세트}  (0) 2023.09.06
input 함수  (0) 2023.09.05