파이썬 실습창을 열 수 있습니다.실습창 열기
김치 재료를 잘 알아야 맛있는 김치를 담글 수 있습니다.
좋은 쉐프(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)이 있습니까?
● 숫자(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(형)을 알 수 있으면 오늘 공부 끝.
수고하셨습니다.
'알고리듬' 카테고리의 다른 글
[알고리듬] #23 자료형<순서열 범주> (1) | 2024.03.28 |
---|---|
[알고리듬] #22 자료형 <숫자 범주> (1) | 2024.03.27 |
[알고리듬] #20 부활절 날짜 계산 (0) | 2024.03.26 |
[알고리듬] #19 산타클로스 (0) | 2024.03.26 |
[알고리듬] #18 감자 껍질 벗기기 (0) | 2024.03.25 |