파이썬으로 코딩테스트를 통과해 보자!
하지만 기본 문법이 가물가물한 나의 머리를 위해서 처음부터 정리를 해보는 걸로...
자료형이란?
모든 프로그래밍은 결국 데이터를 다루는 행위다.
자료형에 대한 이해는 프로그래밍의 길에 있어서의 첫걸음이라고 할 수 있다.
파이썬의 자료형으로는 정수형, 실수형, 복소수형, 문자열, 리스트, 튜플, 사전 등이 있다.
파이썬의 자료형은 필수적으로 알아야 한다. 그럼 먼저 수 자료형에 대해 배워보자.
정수형이란?
정수형(Integer)은 정수를 다루는 자료형이다.
양의 정수, 음의 정수, 0이 포함된다.
코딩 테스트에서 출제되는 많은 문제들은 정수형을 주로 다루게 된다.
# 양의 정수
a = 100
print(a)
# 음의 정수
a = -7
print(a)
# 0
a = 0
print(a)
참고로 파이썬은 자바랑 달리 변수타입을 선언할 필요가 없다. 확실히 코드가 엄청 간단하다....
실수형이란?
실수형 (Real Number)은 소수점 아래의 데이터를 포함하는 수 자료형이다.
파이썬에서는 변수에 소수점을 붙인 수를 대입하면 실수형 변수로 처리된다.
소수부가 0이거나, 정수부가 0인 소수는 0을 생략하고 작성할 수 있다.
# 양의 실수
a = 123.45
print(a)
# 음의 실수
a = -123.45
print(a)
# 소수부가 0일 때 0을 생략
a = 5.
print(a)
# 정수부가 0일 때 0을 생략
a = -.7
print(a)
지수 표현 방식
파이썬에서는 e나 E를 이용한 지수표현 방식을 이용할 수 있다.
e나 E 다음에 오는 수는 10의 지수부를 의미한다.
예를 들어 1e9라고 입력하게 되면, 10의 9 제곱(1,000,000,000)이 된다.
지수 표현 방식은 임의의 큰 수를 표현하기 위해 자주 사용된다.
최단 경로 알고리즘에서는 도달할 수 없는 노드에 대하여 최단 거리를 무한(INF)으로 설정하곤 한다.
이때 가능한 최댓값이 10억 미만이라면 무한(INF)의 값으로 1e9를 이용할 수 있다.
# 1,000,000,000의 지수 표현 방식
a = 1e9
print(a)
# 752.5
a = 75.25e1
print(a)
# 3.954
a = 3954e-3
print(a)
실수형 더 알아보기
오늘날 가장 널리 쓰이는 IEEE754 표준에서는 실수형을 저장하기 위해 4바이트, 혹은 8바이트의 고정된 크기의 메모리를 할당하므로, 컴퓨터 시스템은 실수 정보를 표현하는 정확도에 한계를 가진다.
예를 들어 10진수 체계에서는 0.3과 0.6을 더한 값이 0.9로 정확히 떨어진다.
하지만 2진수에서는 0.9를 정확히 표현할 수 있는 방법이 없다.
컴퓨터는 최대한 0.9와 가깝게 표현하지만, 미세한 오차가 발생하게 된다.
개발 과정에서 실수 값을 제대로 비교하지 못해서 원하는 결과를 얻지 못할 수 있다.
이럴 때는 round() 함수를 이용할 수 있어서, 이러한 방법이 권장된다.
예를 들어 123.456을 소수 셋째 자리에서 반올림하려면 round(123.456, 2)라고 작성한다.
결과는 123.46이 된다.
수 자료형의 연산
수 자료형에 대하여 사칙연산과 나머지 연산자가 많이 사용된다.
단 나누기 연산자(/)를 주의해서 사용해야 한다.
파이썬에서 나누기 연산자(/)는 나눠진 결과를 실수형으로 반환한다.
다양한 로직을 설계할 때 나머지 연산자(%)를 이용해야 할 때가 많다.
예시: a가 홀수인지 체크해야 하는 경우
파이썬에서는 몫을 얻기 위해 몫 연산자(//)를 사용한다.
이외에도 거듭제곱 연산자(**)를 비롯해 다양한 연산자들이 존재한다.
'Programming > Python' 카테고리의 다른 글
| [Python] 사전, 집합 자료형 (0) | 2023.03.21 |
|---|---|
| [Python] 사전, 집합 자료형 (0) | 2023.03.20 |
| [Python] 문자열, 튜플 자료형 (0) | 2023.03.20 |
| [Python] 리스트 자료형 (0) | 2023.03.16 |