2025. 6. 12. 21:56ㆍ파이썬 챌린지
어제 파이썬의 기본 자료형과 변수를 배웠다면, 오늘은 이 데이터들을 가지고 다양한 계산과 비교를 할 수 있도록 도와주는 연산자(Operator)에 대해 알아볼 거예요!
1. 산술 연산자 (Arithmetic Operators) ➕➖✖️➗
산술 연산자는 기본적인 수학 연산을 수행하는 데 사용됩니다.
연산자설명예시결과
+ | 덧셈 | 3 + 5 | 8 |
- | 뺄셈 | 5 - 3 | 2 |
* | 곱셈 | 3 * 5 | 15 |
/ | 나눗셈 (실수 결과) | 5 / 2 | 2.5 |
// | 나눗셈 (정수 몫) | 5 // 2 | 2 |
% | 나머지 | 5 % 2 | 1 |
** | 거듭제곱 | 2 ** 3 | 8 |
사용 상황 추천:
- 두 수를 더하거나 연결하고 싶을 때: + (문자열에도 사용 가능)
- 두 수를 빼고 싶을 때: -
- 두 수를 곱하고 싶을 때: *
- 두 수를 나누고 싶을 때 (실수 결과가 필요하다면): /
- 나눗셈의 정수 몫만 필요할 때: //
- 나눗셈의 나머지를 구하고 싶을 때: % (짝수/홀수 판별 등에 유용)
- 어떤 수의 n제곱을 계산하고 싶을 때: **
활용 예제 코드:
num1 = 10
num2 = 3
print(f"{num1} + {num2} = {num1 + num2}") # 출력: 10 + 3 = 13
print(f"{num1} - {num2} = {num1 - num2}") # 출력: 10 - 3 = 7
print(f"{num1} * {num2} = {num1 * num2}") # 출력: 10 * 3 = 30
print(f"{num1} / {num2} = {num1 / num2}") # 출력: 10 / 3 = 3.3333333333333335
print(f"{num1} // {num2} = {num1 // num2}") # 출력: 10 // 3 = 3
print(f"{num1} % {num2} = {num1 % num2}") # 출력: 10 % 3 = 1
print(f"{num1}의 {num2}제곱 = {num1 ** num2}") # 출력: 10의 3제곱 = 1000
2. 비교 연산자 (Comparison Operators) 🤔❓
비교 연산자는 두 개의 값을 비교하고 그 결과로 참(True) 또는 거짓(False)을 반환합니다.
연산자설명예시결과
== | 같다 | 3 == 5 | False |
!= | 같지 않다 | 3 != 5 | True |
> | 크다 | 5 > 3 | True |
< | 작다 | 3 < 5 | True |
>= | 크거나 같다 | 5 >= 5 | True |
<= | 작거나 같다 | 3 <= 5 | True |
사용 상황 추천:
- 두 값이 같은지 확인하고 싶을 때: ==
- 두 값이 다른지 확인하고 싶을 때: !=
- 어떤 값이 다른 값보다 큰지 알고 싶을 때: >
- 어떤 값이 다른 값보다 작은지 알고 싶을 때: <
- 어떤 값이 다른 값보다 크거나 같은지 알고 싶을 때: >=
- 어떤 값이 다른 값보다 작거나 같은지 알고 싶을 때: <=
활용 예제 코드:
a = 5
b = 10
print(f"{a} == {b}: {a == b}") # 출력: 5 == 10: False
print(f"{a} != {b}: {a != b}") # 출력: 5 != 10: True
print(f"{a} > {b}: {a > b}") # 출력: 5 > 10: False
print(f"{a} < {b}: {a < b}") # 출력: 5 < 10: True
print(f"{a} >= 5: {a >= 5}") # 출력: 5 >= 5: True
print(f"{b} <= 12: {b <= 12}") # 출력: 10 <= 12: True
3. 논리 연산자 (Logical Operators) 그리고, 또는, 아니다 🚥
논리 연산자는 여러 개의 조건을 조합하여 하나의 참 또는 거짓 값을 만듭니다.
연산자설명예시결과
and | 둘 다 참이어야 참 | True and True | True |
or | 둘 중 하나라도 참이면 참 | True or False | True |
not | 참을 거짓으로, 거짓을 참으로 | not True | False |
사용 상황 추천:
- 두 가지 이상의 조건이 모두 만족해야 할 때: and
- 두 가지 이상의 조건 중 하나라도 만족하면 될 때: or
- 조건의 결과를 반대로 만들고 싶을 때: not
활용 예제 코드:
x = 7
is_positive = x > 0
is_even = x % 2 == 0
print(f"{x}은 양수인가? {is_positive}") # 출력: 7은 양수인가? True
print(f"{x}은 짝수인가? {is_even}") # 출력: 7은 짝수인가? False
print(f"{x}은 양수이고 짝수인가? {is_positive and is_even}") # 출력: 7은 양수이고 짝수인가? False
print(f"{x}은 양수이거나 짝수인가? {is_positive or is_even}") # 출력: 7은 양수이거나 짝수인가? True
print(f"{x}은 음수가 아닌가? {not (x < 0)}") # 출력: 7은 음수가 아닌가? True
4. 할당 연산자 (Assignment Operators) ✍️
할당 연산자는 변수에 값을 할당하는 데 사용됩니다. 가장 기본적인 할당 연산자는 = 이며, 다른 연산자들과 함께 축약 형태로 사용될 수도 있습니다.
연산자설명예시축약 형태의미
= | 오른쪽 값을 왼쪽에 할당 | x = 5 | x에 5 할당 | |
+= | 더한 후 할당 | x += 3 | x = x + 3 | x에 3을 더한 후 할당 |
-= | 뺀 후 할당 | x -= 3 | x = x - 3 | x에서 3을 뺀 후 할당 |
*= | 곱한 후 할당 | x *= 3 | x = x * 3 | x에 3을 곱한 후 할당 |
/= | 나눈 후 할당 (실수 결과) | x /= 3 | x = x / 3 | x를 3으로 나눈 후 할당 (실수) |
//= | 나눈 후 할당 (정수 몫) | x //= 3 | x = x // 3 | x를 3으로 나눈 후 할당 (정수 몫) |
%= | 나눈 후 나머지 할당 | x %= 3 | x = x % 3 | x를 3으로 나눈 후 나머지 할당 |
**= | 거듭제곱 후 할당 | x **= 3 | x = x ** 3 | x의 3제곱 후 할당 |
사용 상황 추천:
- 변수에 처음 값을 저장할 때: =
- 변수의 현재 값에 특정 값을 더하고 결과를 다시 변수에 저장할 때: +=
- 변수의 현재 값에서 특정 값을 빼고 결과를 다시 변수에 저장할 때: -=
- 변수의 현재 값에 특정 값을 곱하고 결과를 다시 변수에 저장할 때: *=
- 변수의 현재 값을 특정 값으로 나누고 결과를 다시 변수에 저장할 때: /=, //=
활용 예제 코드:
count = 0
count += 1 # count = count + 1
print(f"count: {count}") # 출력: count: 1
price = 100
price *= 0.9 # price = price * 0.9 (10% 할인)
print(f"할인된 가격: {price}") # 출력: 할인된 가격: 90.0
5. 멤버십 연산자 (Membership Operators) 있니? 없니? 🧐
멤버십 연산자는 어떤 값이 시퀀스(문자열, 리스트, 튜플 등) 안에 존재하는지 확인하는 데 사용됩니다.
연산자설명예시결과
in | 값이 시퀀스 안에 있으면 참 | 'a' in 'apple' | True |
not in | 값이 시퀀스 안에 없으면 참 | 'b' not in 'apple' | True |
사용 상황 추천:
- 특정 문자가 문자열 안에 있는지 확인할 때: 'a' in my_string
- 특정 요소가 리스트 안에 있는지 확인할 때: item in my_list
활용 예제 코드:
my_list = [1, 2, 3, 4, 5]
my_string = "hello"
print(f"3이 리스트에 있나? {3 in my_list}") # 출력: 3이 리스트에 있나? True
print(f"6이 리스트에 없나? {6 not in my_list}") # 출력: 6이 리스트에 없나? True
print(f"'l'이 문자열에 있나? {'l' in my_string}") # 출력: 'l'이 문자열에 있나? True
6. 식별 연산자 (Identity Operators) 똑같은 객체니? 👯
식별 연산자는 두 변수가 같은 객체를 참조하는지 확인하는 데 사용됩니다 (메모리 주소가 같은지 비교).
연산자설명예시결과
is | 두 변수가 같은 객체를 참조하면 참 | x is y | True |
is not | 두 변수가 다른 객체를 참조하면 참 | x is not y | True |
사용 상황 추천:
- 변수가 None인지 확인할 때: my_variable is None
- 두 변수가 정말로 같은 객체를 가리키는지 엄격하게 비교해야 할 때 (일반적인 값 비교에는 == 사용).
활용 예제 코드:
list1 = [1, 2, 3]
list2 = list1
list3 = [1, 2, 3]
print(f"list1 is list2: {list1 is list2}") # 출력: list1 is list2: True (같은 객체 참조)
print(f"list1 is list3: {list1 is list3}") # 출력: list1 is list3: False (값은 같지만 다른 객체)
print(f"list1 is not list3: {list1 is not list3}") # 출력: list1 is not list3: True
7. 오늘의 핵심 정리 📝
오늘은 파이썬에서 데이터를 다루는 데 필수적인 다양한 연산자들을 배웠습니다. 산술, 비교, 논리, 할당, 멤버십, 식별 연산자들의 종류와 사용법을 익혔으니, 이제 코드를 더욱 풍부하게 만들 수 있을 거예요!
내일은 배운 연산자들을 활용하여 조건문을 다루는 방법을 알아볼 예정입니다! 🚀
#dev챌린지 #파이썬 #Python #연산자 #코딩 #개발 #산술연산자 #비교연산자 #논리연산자 #할당연산자 #멤버십연산자 #식별연산자 #코딩기초 #프로그래밍기초
'파이썬 챌린지' 카테고리의 다른 글
🚀 2일차: 파이썬 데이터의 기본 재료! (다양한 자료형과 변수) (0) | 2025.06.11 |
---|---|
🚀 1일차: 파이썬 세계에 발을 내딛다! (파이썬 소개 및 개발 환경 설정) (3) | 2025.06.11 |