Computer >> 컴퓨터 >  >> 시스템 >> Linux

Python range() 완벽 가이드: 정의부터 실전 활용법까지

Python range() 완벽 가이드: 정의부터 실전 활용법까지

프로그래밍 튜토리얼에서 초반에 잘 알려주지 않는 사실 중 하나는, 코딩 과정에서 반복문과 카운팅 작업을 생각보다 훨씬 많이 하게 된다는 점입니다. 그렇기 때문에 제대로 된 프로그래밍 언어라면 숫자를 반복적으로 나열할 수 있는 방법을 반드시 제공합니다. 파이썬(Python)의 range 시퀀스 타입이 바로 그 대표적인 방법입니다.

이 글에서는 파이썬 range()가 무엇인지 살펴보고, 실제 프로그램에서 어떻게 활용하는지 단계별로 알려드리겠습니다.

파이썬 range() 시퀀스 타입 소개

함수처럼 보이지만, range()는 사실 파이썬 3에 내장된 불변(immutable) 시퀀스 타입입니다. 따라서 리스트(list)나 튜플(tuple)처럼 데이터를 모아 두었다가 나중에 반복 처리하는 용도로 분류됩니다.

간단히 말해, range()는 특정 작업을 정해진 횟수만큼 반복 실행할 수 있게 해주는 도구입니다. 파이썬 2에서는 xrange()라는 이름으로 거의 유사한 기능을 제공했으며, 파이썬 3의 range()는 이를 계승하면서 더 강력해졌습니다. 자세한 내용은 아래에서 다루겠습니다.

예상할 수 있듯이, 파이썬 3의 range()는 반복 작업과 리스트·딕셔너리 순회에 매우 유용합니다. 지금부터 이 기능이 어떻게 동작하는지 살펴보겠습니다.

파이썬 range() 시퀀스 타입 사용 방법

먼저 파이썬 range()의 기본 구조부터 확인해 보겠습니다:

range(y)

파이썬 함수치고는 아주 단순한 형태입니다. 여기서 y는 임의의 정수가 될 수 있습니다(기본적으로 부동소수점 숫자는 지원하지 않습니다). 실제 코드에서는 보통 range()의 결과를 변수에 할당합니다. range()가 실행되면 range 객체가 반환되며, 할당된 변수를 출력하면 그 결과를 확인할 수 있습니다.

Python range() 완벽 가이드: 정의부터 실전 활용법까지

다만 실제 응용 프로그램에서는 아래 예시처럼 for 문과 같은 반복문과 함께 사용하는 경우가 대부분입니다.

Python range() 완벽 가이드: 정의부터 실전 활용법까지

여기서 눈여겨볼 점은 range()가 기본 시작점으로 0을 사용한다는 것입니다. 하지만 이는 어디까지나 기본값일 뿐입니다. 사실 range()는 추가로 설정할 수 있는 인자들이 있습니다. 전체 구조는 다음과 같습니다:

range(start, stop, step)

설명하자면, 세 개의 정수가 정의됩니다. 시작점(start), 종료점(stop), 그리고 범위가 건너뛸 숫자 간격(step)입니다. 이 중 stop 인자만 필수이며, 나머지는 모두 선택 사항입니다.

이러한 구조 덕분에 복잡한 반복문과 시퀀스를 매우 유연하게 구성할 수 있습니다. 예를 들어, 짝수 정수로만 이루어진 정확한 범위를 지정하는 것도 가능합니다.

Python range() 완벽 가이드: 정의부터 실전 활용법까지

뿐만 아니라, 다른 함수들과 조합하면 생성된 시퀀스를 일반적인 리스트로 손쉽게 변환할 수도 있습니다.

Python range() 완벽 가이드: 정의부터 실전 활용법까지

파이썬 range()는 오름차순 반복에만 유용한 것이 아닙니다. step에 음수를 지정하면 내림차순 숫자 생성에도 활용할 수 있습니다.

Python range() 완벽 가이드: 정의부터 실전 활용법까지

결론적으로 range()는 파이썬에서 가장 자주 손이 가는 만능 도구 중 하나이며, 여러분의 프로그램에서도 분명 큰 활약을 할 것입니다.

마무리

파이썬은 다양한 강력한 응용 분야에서 뛰어난 성능을 발휘하지만, 특히 리스트·딕셔너리·튜플 생성에서 두각을 나타냅니다. 파이썬 range() 시퀀스 타입을 활용하면 필요한 숫자만 포함된 시퀀스를 빠르고 간결하게 구성할 수 있습니다. 게다가 list() 같은 다른 내장 함수와 조합하면, 생성된 숫자를 저장하고 활용하는 방식에도 높은 유연성을 확보할 수 있습니다.

아직 파이썬 3로 전환하지 못했고 macOS를 사용 중이라면, 이전에 발행한 파이썬 3 업그레이드 가이드를 참고해 보시기 바랍니다.