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