많은 내용을 배우지만 그중에서도 중점으로 알고 써먹어야 할 것 같은
내용을 다루려고 한다
제너레이터란?
파이썬에서는 함수내에서 yield라는 명령어를 통해서 제너레이터를 생성할 수 있다
이는 iterator를 생성하는 것인데, 보통 for 문으로 반복문을 생성시에
반복문에 해당하는 모든 값을 메모리에 올려놓고 계산하기 마련인데,
일반적인 상황에서는 이게 괜찮지만 요즘은 폭발적인 데이터를 다루는 시대다
하드디스크가 아닌 램에 빅데이터를 모두 얹어놓고 잘못 시작했다간 램이 폭주하는
모습을 볼 수 있다
제너레이터는 이러한 상황을 막아준다
제너레이터를 안쓸 때
제너레이터를 쓸 때
여기에서 말하는 바는 성능의 차이라기 보다는
test2는 램에 올려지지 않은 채 대기하고 있었기 때문에 속도가 빠른 것처럼 느껴질 수 있다
test2를 사용할 때에는 한번에 사용하면 메모리 부족으로 프로그램이 종료될 수 있기
때문에 적당히 나눠서 사용하여야 한다
딕셔너리의 커피(?)
객체가 이름만 다를 때, 그리고 중첩된 딕셔너리의 copy에 대한 설명을 담은 코드를 작성해보았다
해당 코드를 실험하면서 느낀 교훈은 역시 객체를 확실히 분리해야 한다는 것!
반응형
'23년 이전 글 > 모두의연구소 아이펠' 카테고리의 다른 글
-7일차- 가위 바위 보 classification task (0) | 2022.01.04 |
---|---|
-6일차- 데이터 전처리 by pandas (0) | 2022.01.03 |
-3일차- 아이펠 일일 공부, 새싹 졸업자의 세미나 (0) | 2021.12.29 |
-2일차- 첫수업, 재귀함수, 부동소수점 (0) | 2021.12.28 |
-1일차- 입학식 모두의 연구소란 어떤 곳? (0) | 2021.12.27 |