03. 숫자
타입
타입은 데이터값을 변경할 수 있는 변수(가변/mutable)인지 혹은 변경할 수 없는 상수(불변/immutable)인지 판단 할 수 있다.
- 하지만 타입은 변경하지 못함.
- 정수, 부울, 실수, 문자열 타입이 있다.
파이썬은 객체의 타입을 바꿀 수 없는 강타입. 심지어 그 값이 가변인 경우에도 타입을 바꿀 수 없음.
숫자
파이썬은 정수(5, 1,000.000.000 등)와 부동소수점수(3.1416, 14.99, 1.87e4등)를 지원한다.
다음표에 있는 간단한 수학 연산자로 결합해서 계산할 수 있다.
연산자 |
설명 |
예 |
결과 |
+ |
더하기 |
5 + 8 |
13 |
- |
빼기 |
90 - 10 |
80 |
* |
곱하기 |
4 * 7 |
28 |
/ |
부동소수점 나누기 |
7 / 2 |
3.5 |
// |
정수 나누기(소수점 이하 버림) |
7 // 2 |
3 |
% |
나머지 |
7 % 3 |
1 |
** |
지수 |
3 ** 4 |
81 |
정수
대화식 인터프린터에서 연속된 숫자는 리터럴(literal) 정수로 간주한다.
개발툴이 아닌 파이썬 인터프리터로 출력
숫자 0을 쓸 수도 있지만 0을 다른 숫자 앞에 넣을 수는 없다.
숫자 앞에 기호가 없으면 양수를 의미한다. 숫자 앞에 + 기호를 붙여도 똑같은 양수다.
음수를 표현하려면 숫자 앞에 - 기호를 붙인다.
위 숫자표에 나와 있는 연산자를 사용해서 계산기 처럼 사용 가능하며, 원하는 숫자와 연산자를
사용해서 계산할 수 있다.
숫자와 연산자 사이의 공백에 상관없이 계산을 수행하며, 곱셈 또한 직관적이다.
나눗셈은 다음 두 가지 방법이 있다.
- /는 부동소수점을 포함한 결과가 출력
- //는 부동소수점을 제외한 결과, 즉 정수가 출력
0으로 나누면 예외가 발생
정수값이 할당된 변수와 리터럴 정수를 혼합해서 사용 가능하다.
a - 3의 결과값을 a에 할당하지 않았으므로 a의 값은 변하지 않는다.
a를 출력하면 95가 나옴.
a - 3의 결과값을 바꾸고 싶다면 다음과 같이 해야한다.
파이썬의 표현식에서는 =의 오른쪽을 먼저 계산하고, 왼쪽 변수에 계산된 값을 할당한다.
= 오른쪽에서 빼기를 계산하여 그 결과를 기억한 다음에, 왼쪽에 있는 a에 할당한다. 임시 변수를 쓰거나
계산후 다시 할당보다 깔끔하다(덧셈 뺼셈 곱셈 나눗셈 다 됨)
%문자는 파이썬에서 다양한 용도로 사용된다. 두 숫자 사이의 값을 구 할 때 첫 번째 숫자(피제수)를
두 번째 숫자(제수)로 나눈 나머지가 계산된다.
ex)
9 % 5
결과 : 4
소수점을 제외한 몫과 나머지를 동시에 얻는 방법은 다음과 같다.
divmod(9, 5)
divmod() 함수에서 인자로 정수 9와 5를 넣으면 튜플이라고 하는 항목의 결과로 반환한다.