1. 学ぶ
  2. /
  3. コース
  4. /
  5. Python 도구 상자

Connected

演習

제너레이터 만들기

이전 연습 문제에서는 주로 컴프리헨션 문법을 사용하는 제너레이터 표현식을 작성했어요. 제너레이터 표현식에 컴프리헨션을 쓸 수 있어서 작업이 훨씬 쉬웠죠!

이제 영상에서 본 내용을 떠올려 보세요. 제너레이터 표현식뿐 아니라 제너레이터 함수 도 있습니다. 제너레이터 함수는 제너레이터 표현식처럼 하나의 값 대신 일련의 값을 차례로 내보내는 함수예요. 제너레이터 함수는 일반 함수와 동일하게 정의하지만, 값을 생성할 때는 return 대신 yield 키워드를 사용합니다.

이 연습에서는 이전 연습 문제에서 정의했던 제너레이터 표현식과 유사한 메커니즘을 가진 제너레이터 함수를 만들어 볼 거예요:

lengths = (len(person) for person in lannister)

指示

100 XP
  • 매개변수 input_list 하나를 받는 함수 get_lengths()의 함수 헤더를 완성하세요.
  • 함수 정의의 for 루프에서, input_list에 있는 문자열의 길이 를 yield 하세요.
  • get_lengths() 제너레이터 함수가 생성한 값을 출력하는 for 루프의 이터러블 부분을 완성하세요. 리스트 lannister 를 전달하여 get_lengths() 를 호출하세요.