파이썬 데이터 타입
- Numeric 숫자
- Integer 정수 (소수점 이하에 정보가 없는 숫자)
- Complex Number 복소수
- Float 실수
- (정수-실수 개념이 컴퓨터에서 소수, 소수가 아닌 숫자로 구분)
- Dictionary 사전
- Boolean 참, 거짓
- Set 집합
- Sequence Type 여러 개의 데이터 모음, 순서를 가지고 있고 데이터 뭉터기로 관리할 수 있음
- Strings
- List
- Tuple
데이터 타입
- 모든 프로그래밍 언어가 데이터를 다루기 위한 약속 : int, float, str, list, tuple, set, dict...
- 프로그래밍 언어마다 다르며 data type에 대한 이해가 있어야 파이썬 데이터 분석이 가능
- 변수(variable)에서 데이터를 저장/관리하며 변수에 대한 개념을 통해 데이터를 사용할 수 있다. = 변수라는 개념을 통해 데이터를 사용할 수 있다.
- 연산 결과가 어떤 의미인지 알아야 한다.
변수 Variable
- 변수는 메모리에 데이터를 저장하기 위한 공간을 가리키는 말이며, 컴퓨터와 프로그래밍 언어 사용자간의 약속이다.
(컴퓨터 메모리에 저장, 사람이 쓰기 편한 형태로 인지할 수 있도록 하는게 변수다. ex) a=adress, b=10 etc)
a : 컴퓨터와 사용자가 인식하는 특정 데이터를 저장하고 있는 공간이고, 공간의 이름을 a라고 한다.
- 변수는 일종의 닉네임으로, 실제 물리적인 메모리 주소공간을 가리킨다.
사용자는 변수의 이름으로 데이터를 인식하고, 컴퓨터는 변수의 주소로 데이터를 인식한다.
- 변수에 데이터를 저장할 때는 '='를 사용한다. 이건 assignment operator라고 부른다.
= 할당, a = 10 (a라는 공간에 10이라는 데이터를 할당한다.)
예제)
a=10으로 할당하고 id(a)로 컴퓨터가 알고 있는 a가 할당된 주소를 반환했다.
Data Type 관련 질문과 답변 숙제
1. 데이터 타입이 왜 다른지? 컴퓨터는 정수와 실수를 어떻게 인식할까? 왜 따로 구분하지?
컴퓨터에서 데이터를 처리하기 위해서는 데이터를 저장해야 하고, 데이터 종류에 따라 분류하여 적절한 크기의 공간에 저장하기 위해 데이터 타입이 필요하다.
- 데이터 타입의 세분화가 잘되면 메모리의 효율성을 조금 더 높일 수 있다고 한다.
- 컴퓨터에서 데이터 타입 별로 별도의 크기와 공간을 가진다.
2. 100개의 숫자를 한꺼번에 다루고 싶을 때 어떻게 해야할까?
- 자료 구조와 관련이 많은 것 같음. 강의자가 낸 질문 의도에 맞는지 모르겠음. 추후 강의 확인 필요하지만 ML에서 Linked list 구조 확인
결론은 컴퓨터는 저장된 데이터를 한번에 다루고 싶다면 데이터를 불러와서 처리해야 한다. 순차적으로 병렬 처리를 할 수도 있지만 연결된 구조를 만들어서 처리할 수도 있나보다.
데이터 구조에 따라서 어떻게 가져올지, 더 효율적으로 처리할지가 달라지는 것 같다.
3. 컴퓨터는 문자를 어떻게 인식할까?
컴퓨터는 010101인데 글자 text는 어떻게 인식하는 거지?
컴퓨터는 특정 문자 정보를 고유한 숫자정보로 저장하고 있고 0,1의 2진법으로 표현한다. (변환 규칙은 ascii code 참고)
파이썬에서 문자데이터는 String이며 문자열은 character들의 모음으로 문자열 배열array로 생각할 수 있다.
- character : 문자 1개
- string : character들의 모음
- 문자열 값 표현은 작은 따옴표나 큰 따옴표로 감싼다. '문자', "텍스트" 또는 """~"""
4. 많은 데이터를 빠르게 찾아야 할때는 어떻게 저장할까? 데이터가 엄청 많을 때 데이터를 어떻게 우리가 찾을 수 있는지?
데이터 타입은 어떤 차이가 있고 어떻게 저장되어 있는지
데이터 타입과 구조에 따라 저장하는 다양한 방식이 있다. 이건 조금 더 공부가 필요함
참고 자료
- 패스트캠퍼스 : 한 번에 끝내는 데이터 분석 툴 초격차 패키지 Online.
string 관련 글
- 관련 참고 글) https://blog.naver.com/PostView.nhn?blogId=youndok&logNo=222019572902
-제대로 파이썬 책 https://wikidocs.net/22217
a) 컴퓨터가 문자를 인식하는 방법
str타입인 길이가 1인 문자객체는 고유한 숫자로 표현될 수 있습니다. `ord`함수를 통해서 특정 문자를 뜻하는 숫자를 확인할 수 있습니다. ``` >>> ord('a') …
wikidocs.net
2번 Linked list https://velog.io/@woojinn8/%EC%9E%90%EB%A3%8C%EA%B5%AC%EC%A1%B0-Linked-List
[자료구조] Linked List
자료구조 중 가장 간단한 형태인 Linked List에 대해 정리했습니다.
velog.io
https://www.alibabacloud.com/ko/knowledge/6-optional-technologies-for-data-storage
데이터 저장을 위한 6가지 옵션 기술 - Alibaba Cloud
6가지 데이터 저장 기술 중에서 선택할 수 있습니다. 즉: 구조화된 데이터 저장소, nosql 데이터베이스, nosql 데이터베이스 유형, 탄력적 검색, 구조화되지 않은 데이터 저장소, 데이터 레이크.
www.alibabacloud.com
ㄴ 데이터 저장 형태, 방식과 storage 관련된 공부는 더 필요함
'Python' 카테고리의 다른 글
무에서 시작하는 파이썬 공부 (0) | 2023.10.27 |
---|