바뀜

774 바이트 추가됨 ,  2022년 2월 10일 (목) 13:06
편집 요약 없음
34번째 줄: 34번째 줄:  
     yield 3
 
     yield 3
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 +
== 출력 값이 여러 개인 경우 ==
 +
<syntaxhighlight lang="python">
 +
def generator():
 +
    yield 1, 2
 +
</syntaxhighlight>위처럼 1개의 제너레이터에서 2개의 출력값이 나오는 경우, 다음과 같이 인덱스를 사용하여 값에 접근할 수 있다.<syntaxhighlight lang="python">
 +
gen = generator()
 +
next(gen)[0]
 +
</syntaxhighlight>
 +
 +
== 응용 ==
 +
 +
=== 제너레이터 길이 ===
 +
제너레이터의 길이를 알아야 할 때가 있다.(인공지능 모델에 넣는다든가..)
 +
 +
# 제너레이터를 리스트로 변환하여 len()함수를 이용해 체크. <code>len(list(generator))</code>이는 메모리 문제를 일으킬 수 있다.
 +
# 제너레이터를 하나씩 읽으며 1씩 증가하며 체크... <code>sum(1 for x in generator)</code>
 +
 
[[분류:기초]]
 
[[분류:기초]]