작성
·
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
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 함수를 통해서 값이 반환됩니다.