본문 바로가기
  • Top Genius in the world
알고리듬

[알고리듬] #21 자료형 <개괄>

by Mr.Algo 2024. 3. 27.
728x90
반응형

파이썬 실습창을 열 수 있습니다.실습창 열기

 

김치 재료를 잘 알아야 맛있는 김치를 담글 수 있습니다.

좋은 쉐프(chef)는 식재료부터 공부합니다.

프로그램의 식재료는 자료(data)입니다.

자료를 공부합시다.

 

1. 자료의 형

파이썬은 모든 자료(data)를 오브젝트(object)라는 개념을 사용하여 관리합니다.

오브젝트는 주소(id), 값(value), 형(type), 메소드(method)로 구성됩니다.

오늘은 오브젝트를 구성하는 형(type)에 대하여 알아봅시다.

파이썬의 특징이 궁금하면 다음을 보세요.

더보기
더보기

python은 객체지향 언어(OOL: object-oriented language)입니다.

객체지향 언어는 프로그램을 명령어의 목록으로 작성하지 않고, 오브젝트(object)들의 모임으로 구성합니다.

 

각각의 오브젝트는 메시지를 주고받고, 데이터를 처리할 수 있습니다. 프로그램이 유연하고 변경이 용이하기 때문에 대규모 소프트웨어 개발에 많이 사용됩니다.

 

또한, 프로그래밍을 더 배우기 쉽게 하고 소프트웨어 개발과 보수를 간편하게 하며, 보다 직관적인 코드 분석을 가능하게 하는 장점을 가지고 있습니다.

 

  • 파이썬의 효율은 통계적으로 C언어의 5배, JAVA의 20배로 알려져 있습니다.
  • 파이썬의 처리 속도가 C언어의 3배 이상 되도록 개발에 착수했습니다. 현재는 C언어가 빠릅니다.

 

1-1. 자료형

파이썬에는 12가지 내장 자료형(data type)이 제공됩니다.

 추가적으로 필요한 것은 만들어 쓸 수 있습니다.

 

다음 표는 12가지 자료형을 정리한 것입니다.

 아래 표의 '사용 예'를 ? 부분에 넣고 실행하여 보세요.

그리고 12가지 type 이름이 출력되는 것을 확인하세요. (코딩은 손가락!)

a= ????????
print(a)
print(type(a))
범주(category) type 이름 읽기 사용 예 주요 특징
없음
(None)
None
(없음)
None 없음표현
첫글자 대문자
숫자
(number)
int 인티저
(정수)
integer
123 소수점이 없는 수
float 플로트
(실수)
1.23 소수점이 있는 수
complex 콤플렉스
(복소수)
1.0 + 2.3j 허수가 있는 수
수학의 i 대신 j
bool True 참 또는 거짓
True, False(대문자)
순서열
(sequence)
str 스트링
(문자열)
string
‘123’ 문자들의 모임
따옴표로 둘러 쌈
list 리스트
(목록)
[1, 2, 3] item(값) 변경 가능
[](브레킷)으로 둘러 쌈
tuple 튜플
(조합)
(1, 2, 3) item(값)  변경 불가능
()로 둘러 쌈
range 레인쥐
(범위)
range(1, 10) 정수 수열
1부터 10앞까지의 정수
매핑
(mapping)
dict 딕셔너리
사전
dictionary
{1:’home’, 2:’office’} 앞의 key로 뒤의 value
{}(브레이스)로 둘러쌈
집합
(set)
set
(집합)
{1, 2, 3} item(값)  변경 가능
{}(브레이스)로 둘러쌈
원소 중복 안됨
frozenset 프라즌셑
(고정 합)
frozenset({1, 2, 3}) item(값)  변경 불가능
{}(브레이스)로 둘러쌈

 

1-2. 범주와 형이름

범주 5개와 형이름(type-name) 12개는 외워야 합니다.

지금 외우세요.

 

● 난(None) 범주에는 어떤 자료형(data type)이 있습니까?

더보기
더보기

None (1개)


None        난형 ( 아무 것도 없는 것을 의미)

 

첫자가 대문자 유의 (소문자  none이면 변수로 인식)

● 숫자(number) 범주에는 어떤 자료형(data type)이 있습니까?

더보기
더보기

int, float, complex, bool   (4가지)


인티저(integer), 플로트, 콤플렉스, 불

 

int               정수형 (소수점이 없는 수)

float           실수형 (소수점이 있는 수)

complex    복소수형 (허수가 있는 수)

bool           불형 (True, False가 있는 것, 첫자는 대문자, 소문자이면 변수로 인식) 

 

complex형은 많이 사용되지 않는다.

● 순서열(sequence) 범주에는 어떤 자료형(data type)이 있습니까?

더보기
더보기

str, list, tuple, range  (4가지)


스트링(string), 리스트, 튜플, 레인쥐 

 

str           문자열형 (따옴표로 둘러싼 모든 것)'

list          리스트형 ( [ ] < 브레킷, bracket>으로 둘러싼 것 )

tuple       튜플형 (괄호로 둘러싼 것)

range      레인쥐형 (range가 있는 것, 수열 만듦)

 

순서열 범주에 있는 모든 형은 내용(item)의 순서가 있음,

순서가 바뀌면 다른 자료(data)가 됨 

● 매핑(mapping) 범주에는 어떤 자료형(data type)이 있습니까?

더보기
더보기

dict  (1 개)


딕셔너리(dictionary)

 

dict         딕셔너리형 ( 사전형 , {} <브레이스, brace>로 둘러싼 것) 

 

사전(국어 사전, 영어 사전,..) 등과 비슷한 방법으로 사용

item의 순서 없음 

● 집합(set) 범주에는 어떤 자료형(data type)이 있습니까?

더보기
더보기

set, frozenset  (2가지)


set                 집합형( { } <브레이스, brace>로 둘러싼 것, dict와 구별은 내용<item>)

frozenset       프라즌셑형(고정집합형, frozenset {} 형태인 것) 

 

item의 순서 없음 

 

frozenset형은 많이 사용되지 않는다.

2. 확인 학습

data type(자료형)은 자료를 둘러싼 문자와 item(포함된 data)을 보면 추론하여 알 수 있습니다. 다음 표의 data를 보고 형(type)을 추론하여 보세요.

no data type no data type no data type
1 False   6 2.7182818   11 frozenset(5, 2)  
2 {99, 88}   7 (1, 'a', 2)   12 -5j  
3 range(10)   8 2424   13 {'me':1, 'you':2}  
4 None   9 [1, 'a', 2]   14 ‘Hello world!’  
5 {}   10 set()   15 []  
더보기
더보기
1 bool 6 float 11 frozenset
2 set 7 tuple 12 complex
3 range 8 int 13 dict
4 None 9 list 14 str
5 dict 10 set 15 list

 

● {}<brace>는 dict와 set에 공통으로 사용됩니다.

item이 없으면 dict입니다. 공집합(blank set)은 set()입니다.

data를 보고 type(형)을 알 수 있으면 오늘 공부 끝.

수고하셨습니다.

 

 

728x90
반응형