일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 딥러닝
- 컴퓨터비전
- 머신러닝
- 자바 실습
- JSP/Servlet
- 자바스크립트
- 디버깅
- 순환신경망
- 파이썬
- 상속
- 혼공머신
- 오블완
- 중학수학
- 자바
- html/css
- 개발일기
- 연습문제
- c언어
- SQL
- 데이터분석
- JSP
- 컴퓨터구조
- 자바스크립트심화
- 중학1-1
- 정보처리기사필기
- 정보처리기사실기
- CSS
- JDBC
- rnn
- 데이터베이스
- Today
- Total
목록고급파이썬 (2)
클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지
이제 이터레이터와 제너레이터에 대해 학습해 볼 것이다. 다음과 같은 예제를 살펴보자. 이렇게 for 문과 같은 반복 구문에 적용할 수 있는 리스트와 같은 객체를 '반복 가능 객체'라고 한다. 이터레이터란?이터레이터는 next 함수 호출 시 계속 그다음 값을 리턴하는 객체이다. 리스트는 반복 가능하다. 그렇다면 리스트는 이터레이터일까? 다음을 확인해 보자. 리스트는 이터레이터 객체가 아니라는 오류가 발생한다. 즉, 반복 가능하다고 해서 이터레이터는 아니라는 것이다. 하지만 반복 가능하다면 다음과 같이 iter 함수를 이용해 이터레이터로 만들 수 있다. 리스트를 이터레이터로 변경했으므로 next 함수를 호출해볼 것이다. next 함 수를 호출할 때마다 이터레이터 객체의 요소를 차례대로 리턴하는 것을..
데코레이터를 이해하려면 먼저 클로저를 알아야 한다. 클로저를 먼저 알아보고 데코레이터를 살펴볼 것이다. 클로저란?클로저란 간단히 말해 함수 안에 내부 함수를 구현하고 그 내부 함수를 리턴하는 함수를 말한다. 이때 외부 함수는 자신이 가진 변수값 등을 내부 함수에 전달할 수 있다. 다음 예제를 통해 확인해 보자.어떤 수에 항상 3을 곱해 리턴하는 함수를 생각해 보자. mul3() 함수는 입력으로 받은 수 n에 항상 3을 곱하여 리턴한다. 이번에는 항상 5를 곱하여 리턴하는 함수를 생각해보자. 하지만 이렇게 필요할 때마다 mul6(), mul(7), ...과 같은 함수를 만드는 것은 매우 비효율적이다. 이 문제를 해결하려면 다음과 같은 클래스를 사용하면 된다. 클래스를 이용해 특정 값을 미리 설..