본문 바로가기
Python

파이썬 사칙연산 연산자 (덧셈, 뺄셈, 곱셈, 나눗셈)

by 초아아 2021. 9. 8.

안녕하세요. 오늘은 파이썬(Python) 기본 문법 중에서 사칙연산 연산자 덧셈, 뺄셈, 곱셈, 나눗셈, 그리고 우선순위 등에 대해 알아보도록 하겠습니다.

 

파이썬(Python) 사칙연산 연산자

 

덧셈(더하기)는 + 연산자를 사용합니다.

 

>>> 10 + 3
13

 

뺄셈(빼기)는 - 연산자를 사용합니다.

 

>>> 10 - 3
7

 

곱셈(곱하기)는 * 연산자를 사용합니다.

 

>>> 10 * 3
30

 

나눗셈(나누기)는 / 연산자를 사용합니다.

 

>>> 10 / 3
3.3333333333333335

 

나눗셈의 정수 부분(정수 나누기)는 // 연산자를 사용합니다.

 

>>> 10 // 3
3

/ 연산자로 나누기를 하면, 소수점 이하까지 모두 출력합니다. 하지만 // 연산자로 나누기를 하면, 소수점 이하는 버리고 정수 부분의 몫만 출력합니다.

 

위의 예시에서는 10을 3으로 나눈 뒤, 소수점 이하의 0.3333333333333335는 제거하고 3만 출력하는 것을 볼 수 있습니다.

 

나눗셈의 나머지를 얻기 위해서는 % 연산자를 사용합니다.

 

>>> 10 % 3
1

즉 10을 3으로 나눈 뒤, 나머지 1을 출력합니다.

 

 

divmod() 함수

 

divmod() 함수를 사용하면 나눗셈의 몫과 나머지를 동시에 출력가능합니다.

>>> divmod(10 , 3)
(3, 1)

 

divmod 함수를 이용해 10을 3으로 나누라는 연산을 실행하면, 몫은 3, 나머지는 1을 동시에 출력합니다.

 

 

거듭 제곱은 ** 연산자를 사용합니다.

 

>>> 10 ** 3
1000

>>>2 ** 0.5
1.4142135623730951

>>>10 ** -2
0.01

>>>0 ** 0
1

 

ZeroDivisionError

 

0에서의 나눗셈 오류가 발생하면 ZeroDivisionError가 뜹니다.

 

>>> 10 / 0
ZeroDivisionError: division by zero

>>> 10 // 0
ZeroDivisionError: integer division or modulo by zero

>>> 10 % 0
ZeroDivisionError: integer division or modulo by zero

>>> 0 ** -1
ZeroDivisionError: 0.0 cannot be raised to a negative power

 

 

사칙연산 연산자의 우선순위

 

Python에서 우선 순위(계산 순서)는 일반적인 산수, 수학과 같다고 보시면 됩니다.

 

아래 두개의 표현식은 동일한 결과를 냅니다.

 

>>> 100 / 10 ** 4 + 2 * 5 - 7
3.01

>>> 100 / (10 ** 4) + (2 * 5) - 7
3.01

괄호 ()로 묶으면 그것부터 먼저 계산이 됩니다. 이것은 우리가 흔히 산수, 수학을 할때와 동일합니다.

댓글