본문 바로가기

Python/Basics

<파이썬 기초> Chapter 02-1 숫자 자료형

숫자형(Number)이란 숫자 형태로 이루어진 자료형으로, 우리가 이미 잘 알고 있는 것이다. 우리가 흔히 사용하는 것을 생각해 보자. 123같은 정수, 12.34같은 실수, 드물게 사용하긴 하지만 8진수나 16진수 같은 것도 있다.
다음 표는 파이썬에서 숫자를 어떻게  사용하는지 간략하게 보여 준다.

항목 파이썬 사용 예
정수 123, -345, 0
실수 123.45, -1234.5,.3.4e10
8진수 0o34, 0o25
16진수 0x2A, OxFF

 
이제 이런 숫자를 파이썬에서는 어떻게 만들고 사용하는지 자세히 알아보자.
 

숫자형은 어떻게 만들고 사용할까?

정수형

정수형(Integer)이란 말 그대로 정수를 뜻하는 자료형을 말한다. 다음 예는 양의 정수와 음의 정수, 숫자 0을 변수 a에 대입하는 예이다.

>>> a = 123
>>> a = -178
>>> a = 0

실수형

파이썬에서 실수형(Floating-point)은 소수점이 포함된 숫자를 말한다. 다음은 실수를 변수 a에 대입하는 예이다.

>>> a = 1.2
>>> a = -3.45

위 방식은 우리가 일반적으로 볼 수 있는 실수형의 소수점 표현 방식이다.

>>> a = 4.24E10
>>> a = 4.24e-10

위 방식은 '컴퓨터식 지수 표현 방식'으로 파이썬에서는 4.24e10 또는 4.24E10처럼 표현한다.(e와 E 둘 중 어느 것을 사용해도 무방하다). 여기에서 4.24e10은 4.24*\(10^{10}\), 4.24e-10은 4.24*\(10^{-10}\)을 의미한다.
 

8진수와 16진수

8진수(Octal)를 만들기 위해서는 숫자가 0o 또는 0O(숫자 0 + 알파벳 소문자 o 또는 대문자 O)로 시작하면 된다.

>>> a = 0o177

16진수(Hexadecimal)를 만들기 위해서는 0x로 시작하면 된다.

>>> a = 0x8ff
>>> b = 0xABC

8진수나 16진수는 파이썬에서 잘 사용하지 않는 형태의 숫자 자료형이니 간단히 눈으로 익히고 넘어거자.
 

숫자형을 활용하기 위한 연산자

사칙연산

프로그래밍을 한 번도 해본 적이 없는 독자라도 사칙연산(+,  -, *, /)은 알고 있을 것이다. 파이썬 역시 계산기와 마찬가지로 다음처럼 연산자를 사용해 사칙연산을 수행한다.

>>> a = 3
>>> b = 4
>>> a + b
7
>>> a * b
12
>>> a / b
0.75

 

x의 y제곱을 나타내는 ** 연산자

다음으로 알아야 할 연산자로 ** 연산자가 있다. 이 연산자는 x**y처럼 사용했을 때 x의 y제곱(\(x^{y}\)) 값을 돌려준다. 다음 예를 통해 알아보자.

>>> a = 3
>>> b = 4
>>> a ** b
81

 

나눗셈 후 나머지를 반환하는 % 연산자

프로그래밍을 처음 접하는 독자라면 % 연산자를 본 적이 없을 것이다. %나눗셈의 나머지 값을 돌려주는 연산자이다. 7을 3으로 나누면 나머지는 1이 될 것이고 3을 7로 나누면 나머지는 3이 될 것이다. 다음 예로 확인해 보자.

>>> 7 % 3
1
>>> 3 % 7
3

 

나눗셈 후 몫을 반환하는 // 연산자

/ 연산자를 사용하여 7나누기 4를 하면 그 결과는 예상대로 1.75가 된다.

>>> 7 / 4
1.75

 
이번에는 나눗셈 후 몫을 반환하는 //연산자를 사용한 경우를 보자.

>>> 7 // 4
1

1.75에서 몫에 해당하는 정수값 1만 돌려주는 것을 확인할 수 있다.

 

퀴즈

방금 배운 연산자를 사용해서 숫자 14를 3으로 나누었을 때 몫과 나머지를 확인해 보자.

>>> 14//3
4
>>> 14%3
2

정답 몫 4, 나머지 2
 

출처 : "점프 투 파이썬"