인프런 커뮤니티 질문&답변

최재현님의 프로필 이미지
최재현

작성한 질문수

프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)

for 구문(2-1) : 하루종일 반복해봐요.

range가 list가 맞나요?

작성

·

212

1

for구문(2-1)에서 수업을 받는중인데요.

선생님께서 sum은 내부적으로 리스트를 받는다고 하신 후

range함수는 리스트를 생성해준다고 하셨습니다.

하지만 print(type(range(10)))을 해보면 

<class 'range'>라고 나오고 

sum함수에 대해 검색해보니 리스트 말고도 튜플 딕셔너리와 같은 iterable한 자료형을 받는다고 했습니다.

구글링을 해보며 봤는데 어떤 곳은 선생님처럼 

range는 리스트를 만든다고 하지만 다른 곳에서는 

range는 리스트를 만드는게 아닌 list 유사의 객체를 만드는

것이라고 합니다. 

생활코딩이라는 곳에서도 range가 range(10)이 10개의 리스트를 만드는건 아니지만 10번 반복할 수 있게 해준다고 하고 있고요...

제가 이해력이 부족해서...

너무 헷갈려서 질문드립니다.

답변 1

1

좋은사람님의 프로필 이미지
좋은사람
지식공유자

Definition and Usage

The range() function returns a sequence of numbers, starting from 0 by default, and increments by 1 (by default), and stops before a specified number.

네 엄밀히 이야기 하면 스퀀스형 numberts를 리턴합니다. 리스트가 아닙니다.

형변환을 하려면 my_list = list(range(1, 1001)) 이렇게 사용해야지요!

이것을 for 문 등에서 사용하면 next 함수를 통해서 값이 반환됩니다.

최재현님의 프로필 이미지
최재현

작성한 질문수

질문하기