파이썬 기초 – 2장. 연산자

안녕하세요. Henry 입니다.
원래 오늘 부터는 파이썬의 자료형에 대해 한가지씩 알아보려고 했는데요.
포스팅을 작성하다보니,연산자, 주석 등 추가적으로 알아야 할 내용이 많아 순서를 바꿨습니다.
오늘은 연산자, 다음 글에서는 주석에 대해 먼저 공부 할 예정입니다. 그럼 시작합니다!

파이썬 기초 – 1장. 객체, 변수, 자료형

1. 산술 연산자

산술 연산자는 수학적인 계산을 수행할 수 있는 다양한 산술연산자를 지원합니다.

1) 덧셈 (+), 뺄셈 (-)

덧셈 연산자인 “+”는 숫자들을 더할 때, 뺄셈 연산자인 “-“는 숫자를 뺄 때 사용됩니다.

a = 10
b = 5
result = a + b
print(result)  # 출력 결과: 15


x = 8
y = 3
result = x - y
print(result)  # 출력 결과: 5

2) 곱셈 (*), 나눗셈 (/)

곱셈 연산자인 “*”는 숫자들을 곱할 때, 나눗셈 연산자인 “/”는 숫자를 나눌 때 사용됩니다.

m = 6
n = 4
result = m * n
print(result)  # 출력 결과: 24

p = 10
q = 2
result = p / q
print(result)  # 출력 결과: 5.0

2. 할당 연산자

할당 연산자는 변수에 값을 저장할 때 사용되며, 변수에 값을 할당하는 동시에 연산을 수행합니다.

1) 등호

가장 기본적인 할당 연산자로, 오른쪽 값을 왼쪽 변수에 할당합니다. 즉, 변수에 값을 저장합니다.

2) 사칙연산 + 등호

변수에 오른쪽 값을 연산 후 , 결과를 왼쪽 변수에 할당합니다.
설명보다는 아래의 표와 예시를 참고하는 것이 이해가 빠를 것 같습니다!

할당 연산자설명예시
대입 (=)변수에 값을 할당합니다.x = 10
더하고 대입 (+=)변수에 값을 더한 후 할당합니다.a += 5 -> a에 5를 더함
빼고 대입 (-=)변수에서 값을 뺀 후 할당합니다.b -= 3 -> b에서 3를 뺌
곱하고 대입 (*=)변수에 값을 곱한 후 할당합니다.c *= 2 -> c에 2를 곱함
나누고 대입 (/=)변수를 값으로 나눈 후 할당합니다.d /= 4 -> d를 4로 나눔

3. 비교 연산자

비교 연산자는 값들을 비교하여 불리언(Boolean) 결과를 반환하는 데에 사용됩니다.

비교 연산자설명예시
동등 비교 (==)두 값이 같은지 확인합니다.x == y
부등 비교 (!=)두 값이 다른지 확인합니다.a != b
크기 비교 (<)왼쪽 값이 오른쪽 값보다 작은지 확인합니다.m < n
크거나 같음 (>=)왼쪽 값이 오른쪽 값보다 크거나 같은지 확인합니다.p >= q
작거나 같음 (<=)왼쪽 값이 오른쪽 값보다 작거나 같은지 확인합니다.r <= s

4. 논리 연산자

논리 연산자는 불리언(Boolean) 값들을 조합하여 새로운 불리언 결과를 얻는 데에 사용됩니다.

논리 연산자설명예시
논리 곱 (and)두 개의 조건이 모두 True일 때 True를 반환합니다.x > 5 and y < 10
논리 합 (or)두 개의 조건 중 하나라도 True면 True를 반환합니다.a == 0 or b == 0
논리 부정 (not)조건의 결과를 반대로 바꿉니다.not is_valid

5. 비트 연산자

비트 연산자는 숫자들을 비트 단위로 조작하는 데에 사용됩니다.

1) 비트 AND (&)

비트 AND 연산자인 “&”는 두 값의 비트를 비교하여 1인 부분만 결과로 남깁니다. 예를 들어:

m = 5  # 이진수로 101
n = 3  # 이진수로 011
result = m & n
print(result)  # 출력 결과: 1 (이진수로 001)

2) 비트 OR (|)

비트 OR 연산자인 “|”는 두 값의 비트를 비교하여 하나라도 1인 부분을 결과로 남깁니다. 예를 들어:

p = 5  # 이진수로 101
q = 3  # 이진수로 011
result = p | q
print(result)  # 출력 결과: 7 (이진수로 111)

6. 연산자의 우선순위

연산자를 잘 알아야 하는 경우는 각각의 연산자별 우선순위가 다르기 때문입니다.
수학을 할때 곱하기가 있으면 더하기 보다 먼저 연산하는 것을 생각하면 이해가 빠르겠습니다.
각 연산자의 우선순위는 아래와 같습니다.

우선순위연산자
1괄호 ()
2지수 **
3곱셈 *, 나눗셈 /, 나머지 %, 정수 나눗셈 //
4덧셈 +, 뺄셈 –
5비트 시프트 <<, >>
6비트 AND &, 비트 XOR ^, 비트 OR |, 비교 연산자 ==, !=, <, <=, >, >=
7논리 NOT not, 논리 AND and, 논리 OR or

그냥 표로만 보면 이해하기가 어렵기 때문에, 코드를 통해 실습을 해보도록 하겠습니다.
아래의 각각의 result 의 값이 얼마일지 고민해보고 실제 아나콘다에 입력을 해서 확인을 해보시기 바랍니다.

x = 15
y = 7
z = 2

result1 = (x + y) / z ** 2
result2 = x - y % z * 3
result3 = (x << 1) & y | z
result4 = (x ^ y) > z
result5 = (x // y) - z

print("result1:", result1)  # (15 + 7) / 2 ** 2 = 5.5
print("result2:", result2)  # 15 - 7 % 2 * 3 = 13
print("result3:", result3)  # (15 << 1) & 7 | 2 = 2
print("result4:", result4)  # (15 ^ 7) > 2 = True
print("result5:", result5)  # (15 // 7) - 2 = 0

혹시 아나콘다 주피터 노트북의 설치 방법이 궁금하시다면, 아래의 Link를 참고하시기 바랍니다.
다음 시간에는 코드의 가독성을 높혀주는 파이썬 주석에 대해 포스팅 하도록 하겠습니다.

아나콘다 주피터 노트북(Anaconda Jupyter Notebook) 설치하기

감사합니다. “끝”

Leave a Comment