지난 시간까지 입출력과 변수, 그리고 자료형에 대해서 배웠습니다.
입력한 값을 출력해보았고, 변수를 통해서 입력한 값을 저장하는 법도 배웠습니다.
이번 시간에는 연산자를 통해서 변수에 저장한 값을 활용해보겠습니다!
파이썬에는 여러 가지 종류의 연산자가 있습니다.
오늘은 그중에서 대표적인 연산자 4종류만 알아보겠습니다.
1. 산술 연산자 (Arithmetic Operators)
산술 연산자. 말그대로 계산하기 위한 연산자들입니다.
우리가 계산할 때, 일반적으로 더하기, 빼기, 곱하기, 나누기를 하죠?
그런 연산자들을 말합니다!
대표적인 산술 연산자들을 알아봅시다.
연산자 | 의미 | 예시 | 결과 |
+ | 덧셈 | 4 + 1 | 5 |
- | 뺄셈 | 6 - 2 | 4 |
* | 곱셈 | 5 * 4 | 20 |
/ | 나눗셈 | 9 / 2 | 4.5 |
// | 몫 | 10 / 3 | 3 |
% | 나머지 | 10 / 3 | 1 |
** | 제곱 | 2**4 | 16 |
아래 코드를 통해 직접 확인할 수 있습니다.
print(4+1) # 5
print(6-2) # 4
print(5*4) # 20
print(9/2) # 4.5
print(10//3) # 3
print(10%3) # 1
print(2**4) # 16
2. 비교 연산자 (Comparison Operators)
비교 연산자 또한 말그대로 두 값을 비교해서 참/거짓을 반환하는 연산자입니다.
수학 시간에 두 수를 비교할 때, 등호(=)나 부등호(>, <) 같은 것들을 썼죠?
이런 것들이 바로 비교 연산자입니다.
대표적인 비교 연산자를 알아봅시다.
연산자 | 의미 | 예시 | 결과 |
== | 같다 | 3 == 3 | True |
!= | 같지 않다 | 3 != 3 | False |
> | 크다 | 7 > 2 | True |
< | 작다 | 5 < 4 | False |
>= | 크거나 같다 | 6 >= 5 | True |
<= | 작거나 같다 | 4 <= 4 | True |
아래 코드를 통해 직접 확인해봅시다.
print(3==3) # True
print(3!=3) # False
print(7>2) # True
print(5<4) # False
print(6>=5) # True
print(4<=4) # True
참고로, 비교 연산자는 True/Flase 값을 가집니다.
즉, bool 자료형을 갖는 것이죠.
해당 비교가 맞으면 True, 틀리면 False 입니다.
3. 논리 연산자 (Logical Operators)
논리 연산자란, 여러 조건을 조합하거나 반전시킬 때 사용하는 연산자입니다.
조금 어렵나요? 아래 표를 봅시다.
연산자 | 의미 | 예시 | 결과 |
and | 그리고 | True and False | False |
or | 또는 | True or False | True |
not | 아니다 | not False | True |
and에서는 둘다 참이어야만 결괏값이 참이겠죠?
or에서는 둘 중 하나만 참이면 결괏값이 참일 것입니다.
not은 반댓값을 가집니다.
아래 코드를 실행해봅시다.
print(True and False) # False
print(True or False) # True
print(not False) # True
위에서 배웠던 비교 연산자로 논리 연산자를 색다르게 활용할 수 있습니다.
print((5>3) and (4==2)) # True and False -> False
print((5>3) or (4==2)) # True or False -> True
print(not (4==2)) # not False -> True
이렇게 코드를 작성하면, 비교 연산 결과를 논리 연산자로 계산할 수 있습니다.
4. 대입 연산자 (Assignment Operators)
대입 연산자는 변수에 값을 저장하거나 갱신할 때 사용하는 연산자입니다.
변수에 값을 저장할 때 사용하는 '='도 대입 연산자 중 하나입니다!
아래 표를 한번 봅시다.
(예시 : a == 10 일 때)
연산자 | 의미 | 예시 | a의 값 |
= | 오른쪽 값을 왼쪽 변수에 저장 | a = 4 | 4 |
+= | 두 값을 더해서 왼쪽 변수에 저장 | a += 4 | 14 |
-= | 왼쪽 값에서 오른쪽 값을 빼서 왼쪽 변수에 저장 | a -= 4 | 6 |
*= | 두 값을 곱해서 왼쪽 변수에 저장 | a *= 4 | 40 |
/= | 왼쪽 값에서 오른쪽 값을 나눠서 왼쪽 변수에 저장 | a /= 4 | 2.5 |
//= | 왼쪽 값에서 오른쪽 값을 나눈 몫을 왼쪽 변수에 저장 | a //= 4 | 2 |
%= | 왼쪽 값에서 오른쪽 값을 나눈 나머지를 왼쪽 변수에 저장 | a %= 4 | 2 |
**= | 왼쪽 값의 오른쪽 값 제곱을 왼쪽 변수에 저장 | a **= 4 | 10000 |
아래 코드를 실행해봅시다.
a1 = 10
a1 = 4
print(a1) # 4
a2 = 10
a2 += 4
print(a2) # 14
a3 = 10
a3 -= 4
print(a3) # 6
a4 = 10
a4 *= 4
print(a4) # 40
a5 = 10
a5 /= 4
print(a5) # 2.5
a6 = 10
a6 //= 4
print(a6) # 2
a7 = 10
a7 %= 4
print(a7) # 2
a8 = 10
a8 **= 4
print(a8) # 10000
이렇게 4가지 종류의 연산자들에 대해 알아보았습니다!
이 연산자들은 파이썬 코드를 작성하는 데에 있어서 매우 중요한 연산자입니다.
앞으로도 사용할 일이 많으니 잘 복습하길 바랍니다!
위 연산자들을 활용한 파이썬 코드를 한번 작성해봅시다.
응용 코드 : 3과목 성적의 총점과 평균 점수 구하기
name = input("이름을 입력하세요 : ")
korean = int(input("국어 성적을 입력하세요 : ")) # 정수로 저장하기 위해 int()로 감싸기
math = int(input("수학 성적을 입력하세요 : ")) # 정수로 저장하기 위해 int()로 감싸기
english = int(input("영어 성적을 입력하세요 : ")) # 정수로 저장하기 위해 int()로 감싸기
sum = korean + math + english # 3과목 점수를 더해 총점 구하기
average = sum / 3 # 총점을 3으로 나눠 평균 점수 구하기
print("---------------------------------")
print(name, "님의 총점 및 평균 점수")
print("총점은", sum, "점 입니다.")
print("평균 점수는", average, "점 입니다.")
이름을 입력하세요 : codingbird
국어 성적을 입력하세요 : 90
수학 성적을 입력하세요 : 95
영어 성적을 입력하세요 : 70
---------------------------------
codingbird 님의 총점 및 평균 점수
총점은 255 점 입니다.
평균 점수는 85.0 점 입니다.
위 코드 전체를 이해할 필요는 없습니다.
중요한 것은, 국어, 수학, 영어 점수를 입력받아서 연산자들을 통해 총점과 평균 점수를 구했다는 것입니다.
연산자를 잘 이해하면, 이와 비슷한 코드들을 작성할 수 있습니다.
*참고사항 1*
일반적으로 그냥 input() 함수를 쓰면, 입력값을 문자열로 인지합니다.
따라서 데이터를 정수 형식으로 받으려면, input()을 int()로 감싸줘야 합니다.
예를 들어 10을 입력했을 때, int()로 감싸지 않으면 변수에는 문자열 "10"이 저장됩니다.
하지만 int()로 감싸준다면 변수에는 정수 10이 저장됩니다.
성적 데이터는 정수로 저장해야 나중에 덧셈, 나눗셈을 할 수 있겠죠?
*참고사항 2*
input() 안에 어떤 문자열을 넣으면, 해당 문자열을 출력하고 그 뒤에 입력한 데이터를 받아들입니다.
'Python' 카테고리의 다른 글
[Python][기초] 문자열 포맷팅 (문자열 포맷 코드 활용) (0) | 2025.04.02 |
---|---|
[Python][기초] 문자열 활용 (0) | 2025.04.02 |
[Python][기초] 파이썬 - 변수와 자료형 (1) | 2025.03.26 |
[Python][기초] 파이썬 - 입출력 (1) | 2025.03.25 |
[Python][기초] 파이썬은 무엇인가? (0) | 2025.03.18 |