본문으로 건너뛰기

인덱싱

문자에서 선택하고 싶은 한 장소의 정보를 찾아내는 작업을 인덱싱이라고 하고 그 장소를 인덱스라고 합니다.

예를 들어 Hello에서 첫 번째 문자를 출력하기 위해서 인덱스 0을 사용할 수 있습니다.

a = "Hello"
print(a[0])

문자 다음에 나오는 [] 대괄호 안에 있는 숫자는 문자의 인덱스입니다.

일상생활에서 '처음'이라고 하면 보통 1을 생각합니다.

하지만 배열(문자열, 리스트 등)에서 첫 번째 인덱스를 출력하기 위해서 0을 사용합니다.

2번째는 1이고 3번째는 2입니다.

이 이유는 조금 뒤에 설명하겠습니다.

5번째 줄의 코드에서 에러가 발생합니다.

그 이유는 인덱스는 0부터 시작하므로 5번째 인덱스는 4입니다.

5 인덱스는 존재하지 않기 때문에 에러가 발생합니다. :::

문자 인덱싱 (x ~ y 값)

문자에서 어떤 범위의 부분 문자를 구하기 위하여 다음과 같은 방법을 사용할 수 있습니다.

[] 안에 :를 사용하여 : 전에 나오는 인덱스를 포함하고 : 다음에 나오는 인덱스는 제외하고 출력이 됩니다.

만일 0이 없이 '' 만 있어도 파이썬은 0이라고 인식합니다.

거꾸로 문자 뒤집기

문자를 거꾸로 바꾸기 위하여 인덱싱을 사용할 수도 있습니다.

옆의 예시에서 ::-10:0:-1을 생략한 코드입니다.

마지막 숫자는 스텝을 뜻합니다.

스텝은 문자 인덱싱을 셀때 단위입니다.

예를 들면, 단위를 2로 정하면 2 문자 중 하나씩만 출력됩니다.

스텝을 -1로 입력하면 거꾸로 바꿀 수 있습니다.

인덱싱 x를 사용하면 x-1인 이유

왜 저희는 목록의 첫 번째로 1을 사용하는데 코딩에서는 0부터 시작할까요?

그 이유는 '수학'입니다. 리스트는 한국어로 번역하면 '목록'입니다. 목록에는 '순서'가 있습니다.

예를 들어 1에서 시작하여 2씩 증가하는 리스트를 만들겠습니다.

1, 3, 5, 7 처음에 1에서 시작했습니다. 처음에는 1 + (2 * 0)입니다.

1에서 2 증가했습니다. 이 순서의 공차(차이)는 2입니다. 두 번째 값은 1 + (2+1)입니다.

이렇게 계속하면 다음과 같은 공식이 나옵니다.

a = 1 + {2 * (a-1)} 그래서 첫 번째 리스트 값을 0을 이용해서 찾는 이유는 공차의 값을 기준으로 0이 곱해졌기 때문입니다.

:::

파이썬 퀴즈 5

4개 질문이 있습니다.
인덱싱에 대한 파이썬 퀴즈입니다.