• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

Generator 예제 2번

21.02.02 17:38 작성 조회수 161

0

def generator_ex1():

    print('Start')

    yield 'A Point'

    print('Continue')

    yield ('B Point') 

    print('End')

temp2 = [x * 3 for x in generator_ex1()]

print(temp2)

Start
Continue
End
['A PointA PointA Point', 'B PointB PointB Point']

결과 값은 이렇게 나옵니다.

"temp 변수안에 list Comprehension을 통해 [A PointA PointA Point, B PointB PointB Point]가 저장되고,  저장 과정에 있어서  Generator_ex1의 실행으로 Start, Continue, End가 출력됬다"고 이해를 했는데 

여기서 temp 변수안에 Start, Continue, End도 출력된 상태로 함께 저장되어 있는 건가요?

그래서 print(temp)를 할 때도 위에 결과가 출력되는 건가요?

항상 좋은 답변과 강의 감사드립니다.

답변 1

답변을 작성해보세요.

0

해당 라인에 접근할 때 실행됩니다. 저장이 되어 있는 개념하고는 약간다르지만, 함수 자체를 스크포 영역안에서 

다음 실행할 라인을 기억하고 있다고 보시면 됩니다.