당신은 멋쟁이, 우리는 장고쟁이~

0%

Python 기초 7편 - Operators (연산자)

Python 기초 - 연산자 (Operators)



Operators and Opernands (연산자와 피연산자)


컴퓨터 프로그래밍 언어에서 연산자 (operators) 들은 특별한 기호들로, 계산 조건 매칭 등을 표현합니다.


연산자 (operators) 들이 사용하는 값들은 피연산자 (opernands) 라고 불리웁니다.


c = a + b 에서,

연산자는 +, 피 연산자들은 a 와 b 입니다.


파이썬은 아래 연산자들을 지원합니다.


연산자명 연산
Operators commands 연산자 명령
Arithmetic Operators 산수 연산자
Comparison Operators 비교 연산자
Logical Operators 논리 연산자
Assignment Operators 할당 연산자
Bitwise Operators 비트 단위 연산자

Operator : Commands


연산자의 기능들을 제공하는 함수들의 모듈입니다.


1
2
3
4
5
6
7
8
# Operator: commands 
# Operator 명령어들 예시는 아래와 같습니다.

from operator import add, sub, mul, truediv, floordiv, mod
from operator import eq, ne, lt, gt, ge
from operator import and_, or_, not_
from operator import itemgetter, attrgetter, methodcaller
import operator as op

Arithmetic Operators (산수 연산자)


연산자 이름 예시 결과
+ 더하기 x + y x 와 y 의 합계
- 빼기 x - y x 와 y 의 차이
* 곱하기 x * y x 와 y 의 곱셈
/ 나누기 x / y x 와 y 의 나눗셈의 몫
% 나머지 구하기 x % y x 를 y 로 나누고 남은 나머지의 값
** 지수연산 x ** y x 의 y 승
// 몫 구하기 x // y x 를 y 로 나누어 나온 몫의 소숫점을 제외한 값

산술 연산자의 예시를 들어보면, 아래와 같습니다.


1
2
3
4
5
6
7
8
9
10
11
12
# Arithmetic Operators 
# 산술 연산자
x = 14
y = 5

print(x + y) # 합계
print(x - y) # 뺄셈
print(x * y) # 곱셈
print(x / y) # 나누기
print(x % y) # 나누기 이후에 나머지 값
print(x ** y) # x의 y 승
print(x // y) # 나누어서 나온 몫의 소숫점을 제외한 부분

Comparison Operators (비교 연산자)


연산자 이름 예시 결과
== Equal x == y x 가 정확히 y 와 같을때 True
!= Not Equal x != y x 가 y 와 같지 않을때 True
> Greater than x > y x 가 y 보다 큰 값일때 True
< Less than x < y x 가 y 보다 작은값일때 True
>= Greater than or equal to x >= y x 가 y 보다 크거나 같을때 True
<= Less than or equal to x <= y x 가 y 보다 작거나 같을때 True

예시를 들면, 아래와 같습니다. 연산의 결과값이 나오게 될겁니다.


1
2
3
4
5
6
7
8
9
10
11
# Comparison Operators 
# 비교 연산자
x = 12
y = 18

print(x == y)
print(x != y)
print(x > y)
print(x < y)
print(x >= y)
print(x <= y)

Logical Operators (논리 연산자)


연산자 예시 결과
and (x and y) x 와 y 둘다 True 이면, True
or (x or y) x 와 y 둘중에 하나가 True 이면, True
not (x not y) 만약 조건이 True 라면, not 연산자는 False 로 만듭니다.

예를들면, 아래와 같습니다.


1
2
3
4
5
6
7
8
9
10
# Logical Operators 
x = 12
y = 18

print(x > 10 and y > 10)
print(x > 14 or y > 14)

# x, y 둘다 10보다 커서, 조건은 충족되어 True 여야 하나, not 이 붙어서 False 를 반환합니다.

print(not(x > 10 and y > 10))

Assignment Operators (할당 연산자)


연산자 줄임 표현식 비고
+= x += y x = x + y x 와 y 두값을 더하고, 더한값을 왼쪽의 x 에 할당
-= x -= y x = x - y x 와 y 두값을 빼고, 뺀값을 왼쪽의 x 에 할당
*= x *= y x = x * y x 와 y 두값을 곱하고, 곱한값을 왼쪽의 x 에 할당
/= x /= y x = x / y x 를 y 로 나누고, 나눈값을, 왼쪽의 x 에 할당
%= x %= y x = x % y x 를 y 로 나눈 나머지값을, 왼쪽의 x 에 할당
**= x **= y x = x ** y x 를 y 승만큼 곱한다음, 왼쪽의 x 에 할당
//= x //= y x = x // y x 를 y 로 나눈 몫(소수점 제외)을, 왼졲에 x 에 할당

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# Assignment Operators 
# 할당 연산자
# 할당 연산을 할때마다, x 에 새로운 값이 할당되어 집니다.

x = 12
y = 18

x += y
print(x)

x -= y
print(x)

x *= y
print(x)

x /= y
print(x)

x %= y
print(x)

x **= y
print(x)

x //= y
print(x)

Bitwise Operators (비트 연산자)


비트 연산은 별로 다룰일이 없기때문에, operators 만 보고 넘어갑니다.


연산자 줄임 표현식 비고
& And x & y
| Or x | y
^ Xor x ^ y
~ Not ~x
<< Shift Left x << y
>> Shift right x >> y