• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

map 함수의 리턴값에 관한 질문입니다

21.10.12 15:25 작성 조회수 171

0

concureent.futures의 map 함수의 출력값과 관련해서 궁금한 내용인데요

from concurrent import futures
import threading
import time

def task(n):
    print('{} : sleeping {}'.format(threading.current_thread().namen))
    time.sleep(n / 10)
    print('{} : done with {}'.format(threading.current_thread().namen))
    return n / 10

ex = futures.ThreadPoolExecutor(max_workers=2)
print('main : starting')
results = ex.map(taskrange(50, -1))
print('main : unprocessed results {}'.format(results))
print('main : waiting for real results')
real_results = list(results)
print('main : results : {}'.format(real_results))

다음의 코드를 실행하니 

print('main : unprocessed results {}'.format(results))

이 부분의 출력값이

ThreadPoolExecutor-0_1 : sleeping 4main : unprocessed results <generator object Executor.map.<locals>.result_iterator at 0x000002899230B7B0>

이렇게 나오는 것을 확인할 수 있었습니다..

generator와 iterator가 모두 나오는걸 볼 수 있었는데요

map 함수의 출력값은 generator인가요 iterator 인가요?? 

답변 1

답변을 작성해보세요.

0

최종값을 출력 값 형식대로 iterable한 데이터 입니다.