🤍 전 강의 25% 할인 중 🤍

2024년 상반기를 돌아보고 하반기에도 함께 성장해요!
인프런이 준비한 25% 할인 받으러 가기 >>

  • 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    해결됨

return list(map(str, range(num)))

23.07.27 09:11 작성 23.07.27 09:32 수정 조회수 136

1

return list(map(str, range(num)))

여기에서 range() 함수 자체가 iterator를 반환하나요?

그럼 예전 강의에서 list자료형을 넣었을때도 iterator를 반환했던걸까요...?

그리고 람다형식으로 lamda i:str(i) 가 아니라 str만 써도 되나요....??

그리고

t = timstmt = """

gen_num1(1000)

"""eit.timeit(stmt=stmt, setup=setup, number=10000)

stmt자체에 숫자몇번을 돌리라는 뜻이 이미 있는데 number=10000는 왜 또 쓰는건가요?

 

답변 1

답변을 작성해보세요.

0

안녕하세요 남기정님,

range() 함수는 iterable을 리턴하지만 iterator를 반환하지는 않습니다. 그래서 for 루프나 iterable을 받는 함수에 넣으시면 차례로 호출 가능합니다.

그리고 람다형식으로 lamda i:str(i) 가 아니라 str만 써도 되나요....?? <== 이건 무슨 질문인지 모르겠습니다만....

마지막으로 질문이 좀 혼돈되는데, number의 밑에 코드는 10,000번 그 함수를 호출해서 시간을 기록해 달라라는 뜻입니다.

timeit.timeit(stmt=stmt, setup=setup, number=10000)

 

남기정님의 프로필

남기정

질문자

2023.07.27

아 제가 설명이 부족했네요..

return list(map(lamda i : str(i),range(num)) 이렇게 쓰는게 아닌가싶어서요

남기정님의 프로필

남기정

질문자

2023.07.31

아직 궁금증이 해결안되었어요 ㅠ

네 문법만 좀 고치면 될 듯합니다.

return list(map(lambda i: str(i), range(num)))
채널톡 아이콘