안녕하세요 주니입니다.
파이썬 문자열은 각 문자에 대한 index를 가집니다.
이 index를 이용하면 한 문자를 참조할 수 있습니다.
index로 부분 문자열을 자를 수도 있습니다.
파이썬에서 어떻게 index로 문자열을 다룰 수 있는지 알아보도록 하겠습니다.
문자열 인덱스
문자열은 연속된 문자들로 구성됩니다.
각 문자들은 인덱스를 가지고 있습니다.
인덱스들을 이용하여 한 문자 또는 부분 문자열을 참조할 수 있습니다.
인덱스는 0부터 시작해서 문자열의 길이-1의 범위를 가집니다.
예를 들면, 'hello'라는 문자열은 0부터 4의 범위를 가집니다.
문자 인덱싱
인덱싱은 "대괄호(square brackets) [ ]"를 이용합니다.
대괄호 안에 인덱스를 넣으면 해당 인덱스의 문자를 참조합니다.
예제로 확인해보겠습니다.
str = "hello" index = 0 length = len(str) while(index < length): print(str[index]) index += 1
str이라는 변수에 "hello" 문자열을 할당합니다.
index라는 변수를 0으로 초기화했습니다.
length 변수에 len 함수를 이용하여 str 문자열의 길이를 할당했습니다.
while 문을 이용해서 index 가 length 보다 작을 때까지 반복합니다.
str[index]로 각 문자를 참조하여 print 합니다.
while 문과 같은 문법 요소는 추후에 다룰 것이니 잘 모르더라도 넘어가도 좋습니다.
문자열 인덱싱
문자열의 부분 문자열을 인덱싱 할 수 있습니다.
대 괄호 안에 ':' 문자의 전후로 인덱싱 할 문자열의 처음 index와 마지막 index를 넣습니다.
예를 들면, 문자열[처음 index : 마지막 index]의 형태가 됩니다.
"hello python"이라는 문자열이 있습니다.
"python"이라는 부분 문자열을 인덱싱을 하여 참조할 수 있습니다.
"p" 문자의 인덱스는 6, "n"문자의 인덱스는 12입니다.
string[6:12]와 같이 부분 문자열을 인덱싱 할 수 있습니다.
한번 코드로 확인해보겠습니다.
str = "hello python" print(str[6:12])
str이라는 변수에 "hello python" 문자열을 할당했습니다.
str[6:12]로 인덱싱하여 print 했습니다.
인덱싱 괄호에서 마지막 문자의 인덱스를 마지막 index인 11이 아닌 12를 입력했습니다.
그 이유는 인덱싱을 할 때 마지막 인덱스는 포함이 되지 않습니다.
부등식으로 표현을 한다면, start <= index < end로 표현할 수 있습니다.
시작 인덱스를 생략하면, 시작 인덱스는 0을 의미하게 됩니다.
마지막 인덱스를 생략하면 문자열의 마지막 인덱스를 포함합니다.
예를 들면 [:], [:n], [n:] 이런 식으로 사용이 가능합니다.
코드로 확인하고 마무리하도록 하겠습니다.
str = "hello python" print(str[:]) print(str[6:]) print(str[:5])
str 변수에 "hello python" 문자열을 할당합니다.
첫 번째 print에서 시작과 마지막 인덱스를 모두 생략했습니다.
두 번째는 마지막 인덱스를 생략했습니다.
세 번째는 시작 인덱스를 생략했습니다.
파이썬 문자열 인덱싱해보기
Reviewed by Juny
on
7월 12, 2019
Rating:
댓글 없음: