본문 바로가기

Coding, Testing, Challenge/python-basic

Python 숫자형 연산

728x90

이번 포스팅에서는 숫자형 자료의 연산을 알아보도록 하겠습니다.

기본적으로 Python에서 제공되는 연산은 덧셈, 뺄셈, 곱셈, 나눗셈, 나머지, 거듭제곱 등이 있습니다.

먼저 숫자형 자료 중에서 정수형의 연산에 대해서 알아보겠습니다.

 

다음의 코드를 보면 각각의 연산자를 알 수 있습니다.

덧셈 +

뺼셈 -

곱셈 *

나눗셈 /

몫 //

나머지 %

거듭제곱 **

위의 연산의 결과를 보면 다음과 같습니다.

나머지의 경우 /를 사용하면 

그리고 나머지를 제외한 연산들에서 알 수 있듯 정수형과 정수형의 연산의 경우 

결과도 정수형으로만 나오는 것을 알 수 있습니다.

그러면 정수형이 아닌 실수형끼리의 연산은 어떻게 출력되는지 보겠습니다.

위의 정수형과 동일한 코드에서 모든 자료형을 실수형으로 바꾸어 보았습니다.

결과를 보면 모든 출력물이 소수형으로 표시되는 것을 알 수 있습니다.

 

 

 

정수형과 정수형의 나눗셈 결과로 예상하신 분도 있으시겠지만,

정수형과 소수형이 섞여 있는 경우에는 어떤 자료형으로 출력되는지 보겠습니다.

위의 코드의 출력 결과를 보면 모든 출력물의 결과가 실수형으로 표시되는 것을 알 수 있습니다.

정리해 보자면 기본적으로 정수보다 실수가 포함할 수 있는 수의 범위가 훨씬 세밀하고 많습니다.

Python에서는 숫자형의 연산시 결과가 표현될 수 있는 범위로 자료형을 변환을 하고 있는 것이지요.

 

정수와 정수의 연산(나눗셈을 제외)에서는 정수형의 범위에서 표현이 가능하므로 출력물이 정수형으로 출력!

실수와 실수의 연산에서는 실수형의 범위에서 표현이 가능하므로 출력물이 실수형으로 출력!

실수와 정수의 연산에서는 정수에서는 포함할 수 없는 소수점 이하의 값이 필요하므로 실수형으로 출력!

마찬가지로 정수형의 나눗셈의 경우로 정수형의 범위에서 표현할 수 없는 소수점 이하 값으로 인해서

실수형으로 출력!

 

이렇게 표현이 되고 있는 것입니다.

그리고 Python에서 자료형의 연산 순서는 수학의 사칙연산과 우선순위가 같습니다.

다음의 코드와 같이 2개의 연산이 있습니다.

이 코드에서 식 1과 식 2의 값은 어떻게 출력이 될까요

아래와 같이

식 1은 33

식 2는 48

이 출력됩니다.

위의 결과에서 아실 수 있듯, Python의 연산은 우리가 알고 있는 수학의 연산법칙과 

다르지 않다는 것을 알 수 있습니다.

 

마지막으로 우리가 가장 많이 사용하는 반올림에 대해서 알아보겠습니다.

반올림에는 round라는 함수가 사용되고 있습니다.

round함수의 사용법은 아래와 같습니다.

round(실수형 자료형, 표현하고자 하는 소수점 자릿수)

 

7을 6으로 나누는 나눗셈의 출력과 round를 통해서 반올림하는 출력하는 코드입니다.

round함수를 보면 7/6을 나눈 숫자를 소수점 둘째 자리까지만 표시하는 것을 작성되어 있습니다.

결과를 보면 그냥 나눗셈의 경우와 다르게 소수점 2자리에서 반올림된 것을 알 수 있습니다.

캡처되어 있는 소스들은 python파일로 첨부해 두겠습니다.

test_5.py
0.00MB

다음번에는 문자형 자료의 연산에 대해서 포스팅해보도록 하겠습니다.

 

 

'Coding, Testing, Challenge > python-basic' 카테고리의 다른 글

Python 자료형의 형변환  (0) 2020.12.21
Python 문자열 표현과 연산  (0) 2020.12.20
Python 함수와 파라미터  (0) 2020.12.15
Python 변수와 함수  (0) 2020.12.14
Python 자료형  (0) 2020.12.10