숫자형
숫자형(Number)이란 숫자 형태로 이루어진 자료형이다.
다음 표는 파이썬에서 숫자를 어떻게 사용하는지 간략하게 보여 준다.
항목 | 파이썬 사용 예 |
정수 | 123, -345, 0 |
실수 | 123.45, -1234.5, 3.4e10 |
8진수 | 0o34, 0o25 |
16진수 | 0x2A, 0xFF |
숫자형
정수형
정수형(integer)이란 말 그대로 정수를 뜻하는 자료형을 말한다. 다음은 양의 정수와 음의 정수, 숫자 0을 변수 a
에 대입하는 예이다.
a = 123
a = -178
a = 0
실수형
파이썬에서 실수형(floating-point)은 소수점이 포함된 숫자를 말한다. 다음은 실수를 변수 a
에 대입하는 예이다.
a = 1.2
a = -3.45
다음은 “컴퓨터식 지수 표현 방식”으로, 파이썬에서는 4.24e10 또는 4.24E10처럼 표현한다. (e와 E 둘 중 어느 것을 사용해도 된다)
a = 4.24E10
a = 4.24e-10
여기서 4.24E10은 4.24 * 10^10, 4.24e-10은 4.24 * 10^-10을 의미한다.
8진수와 16진수
8진수(octal)를 만들기 위해서는 숫자가 0o 또는 0O(숫자 0 + 알파벳 소문자 o 또는 대문자 O)으로 시작하면 된다.
a = 0o177
print(a) # 127
0o177 = 1 X 8^2 + 7 X 8^1 + 7 = 127
16진수(hexadecimal)를 만들기 위해서는 0x로 시작하면 된다.
a = 0x8ff
b = 0xABC
print(b) # 2748
0xABC = 10 X 16^2 + 11 X 16^1 + 12 = 2748
8진수나 16진수는 파이썬에서 잘 사용하지 않는 형태의 숫자 자료형이므로 간단히 눈으로만 익히고 넘어간다.
숫자형을 활용하기 위한 연산자
사칙 연산
프로그래밍을 한 번도 해 본 적이 없는 사람이라도 사칙 연산(+
, -
, *
, /
)은 알고 있을 것이다. 파이썬 역시 계산기와 마찬가지로 다음처럼 연산자를 사용해 사칙 연산을 수행한다.
a = 3
b = 4
a + b # 7
a - b # -1
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만 리턴하는 것을 확인할 수 있다.
복합 연산자
복합 연산자는 앞서 살펴본 +
, -
와 같은 산술 연산자와 대입 연산자(=
)를 합쳐 놓은 것이다. 복합 연산자가 무엇인지 예를 통해 자세히 알아본다.
먼저 다음과 같이 a에 1이라는 값을 대입해 본다.
a = 1
이제 a의 값을 1만큼 증가 시키려면 다음과 같이 할 수 있다.
a = a + 1 # a + 1로 계산된 값을 다시 a에 대입한다.
print(a) # 2
a = a + 1
식에 의해 a의 값이 1만큼 증가된다. a = a + 1
과 같은 표현식은 값을 증가시키기 위해 자주 사용한다. 하지만 이 표현식은 다음과 같이 더 간략하게 표현할 수 있다.
a += 1
a += 1
이라는 표현식은 a = a + 1
을 줄여서 표현한 것으로 완전히 동일한 기능을 한다. 여기에서 사용한 +=
와 같은 연산자를 복합 연산자라 부른다.
만약 a의 값을 1만큼 감소시키려면 다음과 같은 -=
복합 연산자를 사용할 수 있다.
a = 1
a -= 1 # a = a - 1 과 같음
print(a) # 0
복합 연산자에는 다음과 같은 것들이 있다.
+=, -=, *=, /=, //=, %=, **=
이렇게 복합 연산자를 사용하면 코드를 더욱 간결하고 가독성 있게 작성할 수 있다.