영어 원문: How to Substring a String in Python
구문은 다음과 같습니다.
String[start:end:step]
여기서,
start
: 부분 문자열의 시작 인덱스입니다. 이 인덱스의 문자는 부분 문자열에 포함됩니다. 시작 인덱스를 생략하면 기본값인 0이 지정됩니다.
end
: 부분 문자열의 끝 인덱스입니다. 이 인덱스의 문자는 부분 문자열에 포함되지 않습니다. end
가 생략되거나 지정된 값이 문자열 길이를 초과하면 기존 문자열의 길이와 동일하다고 가정합니다.
step
: 현재 문자에서 step
간격으로 문자를 추출합니다. step
을 생략하면 기본값인 1로 설정됩니다.
string[start:end]
: start
인덱스부터 end
-1, 즉, 마지막에서 두 번째 인덱스(end
인덱스는 제외)까지의 문자들을 슬라이싱합니다.
string[:end]
: 문자열의 맨 처음부터 end
-1, 즉 마지막에서 두 번째 인덱스(end
인덱스는 제외)까지의 문자들을 슬라이싱합니다.
string[start:]
: start
인덱스부터 문자열의 마지막까지 슬라이싱합니다.
string[start:end:step]
: start
인덱스부터 end
-1 인덱스 범위 내에 step
간격으로 슬라이싱합니다.
string = "freeCodeCamp"
print(string[0:5])
출력된 값:
> freeC
참고: print(string[:5])
는 print(string[0:5])
와 같은 결과를 반환합니다.
string = "freeCodeCamp"
print(string[2:6])
출력된 값:
> eeCo
string = "freeCodeCamp"
print(string[-1])
출력된 값:
> p
위 예시를 보면 알 수 있듯이, start
또는 end
인덱스는 음수일 수 있습니다. 음수 인덱스는 주어진 문자열의 뒤에서부터 문자를 접근한다는 뜻입니다. -1 인덱스는 문자열의 마지막 문자를 가르키고, -2는 마지막에서 두 번째 문자를 가르키는 식입니다.
string = "freeCodeCamp"
print(string[-5:])
출력된 값:
> eCamp
string = "freeCodeCamp"
print(string[1:-4])
출력된 값:
> reeCode
string = "freeCodeCamp"
print(string[::2])
출력된 값:
> feCdCm