더북(TheBook)

그런데 뭔가 이상합니다. 성별을 나타내는 1이라는 값은 문자열에서 8번째 자리에 있습니다. 그런데 왜 7이라고 적었을까요? 코드에서 위치를 나타내는 인덱스는 1이 아닌 0부터 시작하기 때문입니다. 그래서 성별을 나타내는 1의 위치는 8이 아닌 7입니다. 이 개념은 아주 중요합니다. 코딩을 처음 배울 때는 혼란스러울 수 있으니 이 점을 꼭 기억하길 바랍니다.

그림 4-2 인덱스

인덱스의 개념을 알았으니 이를 이용한 슬라이싱으로 배워 보겠습니다. 슬라이싱은 대괄호 안에 인덱스를 넣고 필요한 범위를 콜론(:)으로 구분해 표시합니다.

형식

변수명[시작 인덱스:종료 인덱스] # 시작 인덱스부터 종료 인덱스 직전까지

콜론을 사이에 두고 시작 인덱스와 종료 인덱스를 넣습니다. 예를 들어, [3:7]이라고 작성하면 인덱스 3부터 7 직전, 즉 3부터 6에 있는 데이터를 가져옵니다. 주민등록번호에서 연, 월, 일을 각각 2자리씩 가져오고 싶다면 다음과 같이 작성합니다.

jumin = "990229-1234567"
print("연 : " + jumin[0:2]) # 0부터 2 직전까지(0, 1)
print("월 : " + jumin[2:4]) # 2부터 4 직전까지(2, 3)
print("일 : " + jumin[4:6]) # 4부터 6 직전까지(4, 5)

실행결과 icon_con

연 : 99
월 : 02
일 : 29
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.