Generator function(제네레이터 함수)
CODEDRAGON ㆍDevelopment/Python
반응형
Generator function(제네레이터 함수)
· Generator는 Iterator의 특수한 한 형태입니다.
· 함수 안에 return 대신 yield구문을 이용해 함수 객체를 유지한 채 값을 호출자에 넘겨줍니다. yield 를 사용하여 데이터를 하나씩 리턴하는 함수입니다
· 값을 넘겨준 후 함수 객체는 그대로 유지되며 함수의 상태를 그대로 유지하고 다시 호출 할 수 있기 때문에 순회가능한 객체를 만들 때 매우 유용합니다.
· Generator 함수가 처음 호출되면, 그 함수 실행 중 처음으로 만나는 yield 구문에서 값을 리턴합니다.
· Generator 함수가 다시 호출되면, 직전에 실행되었던 yield 문 다음부터 다음 yield 문을 만날 때까지 문장들을 실행하게 됩니다.
· 이러한 Generator 함수를 변수에 할당하면 그 변수는 generator 클래스 객체가 됩니다.
def gen(): yield 10 yield 20 yield 30 |
'Development > Python' 카테고리의 다른 글
메서드(Method) (0) | 2020.02.15 |
---|---|
인스턴스 메서드(instance method) (0) | 2020.02.15 |
시퀀스/매핑 자료형의 연산자 중복 (0) | 2020.02.15 |
filter() (0) | 2020.02.15 |
sys.getrefcount() (0) | 2020.02.15 |