Chapter 04
- 시퀀스형
- 컨테이너(Container, 서로 다른 자료형을 담음) Ex) List, tuple, collections, deque
- 플랫(Flat, 한 개의 자료형) Ex) str,bytes,bytearray,array,memoryview
- 가변: list,bytearray,array,memoryview,deque
- 불변: tuple, str, bytes
- 리스트 및 튜플 고급에 대해서 배웠다
- 클래스 속성 중에 __iter__가 있으면 해당 데이터 반복문에서 사용할 수 있다
Part 01
- 지능형 리스트(Comprehending Lists) 구현 여러개
1.
2. 반복문 리스트 안에 넣어서 구현
3. 지능형 리스트 + Map, Filter
- Generator 생성 (장점 검색해보기) / Generator: 한 번에 한 개의 항목을 생성(메모리 유지x)
- 출력 결과 (array를 리스트로 변환할 때는 .tolist())
- Generator 예제1
- 출력 결과 (for문이 반복되는 건데 왜 한줄로 출력이 되는걸까?)
- 예제2
- 결과는 A1~A20, B1~B20,C1~C20,D1~D20 가 하나씩 출력됨
- 리스트 깊은 복사/ 얕은 복사
- 구현
-mark1과 mark2의 결과가 같아보이지만 수정시에 차이점이 발생한다
-mark1[0][1]만 변경되고 있지만, mark2[0][1]은 모든 원소의 1번 인덱스가 다 변경되었다. 이럴 경우 원하지 않는 데이터가 변경될 수 있으므로 사용시에 주의해야함. 되도록이면 mark1의 방식을 이용하도록
- 복사 방식 다름 증명
Part 02
- list vs Array 적합한 사용법 설명
- 리스트 기반: 융통성, 다양한 데이터 타입 사용 가능, 범용적 사용
- 숫자 기반: 배열(리스트와 거의 호환)
- divmod 와 unpacking


- 출력 결과
- Mutable(가변) vs Immutable(불변)
- 튜플 아이디 계속 변하고 리스트는 연산자의 활용에 따라 자기 자신에 할당해서 아이디 동일하다
- 출력 결과
'Dev Language > Python' 카테고리의 다른 글
[파이썬 중급] #4_1. 일급함수 & 클로저 기초 (0) | 2021.11.17 |
---|---|
[파이썬 중급] #3_2 시퀀스 (0) | 2021.11.16 |
[파이썬 중급] #2 매직 메소드(스페셜 메소드) (0) | 2021.11.15 |
[파이썬 중급] #1 클래스& 메소드 심화 (0) | 2021.11.15 |
[파이썬 기초] #5 (0) | 2021.11.15 |