본문 바로가기

Algorithm/Python

[Python] 문자열 슬라이싱

문자열을 슬라이싱하는 방법

 

"Life is too short, You need Python" 문자열에서 특정 단어를 뽑아내는 방법을 알아보자.

 

>>> a = "Life is too short, You need Python"
>>> b = a[0] + a[1] + a[2] + a[3]
>>> b
'Life'

위와 같이 뽑아낼 수도 있겠지만 슬라이싱 기법을 이용하면 좀 더 간편하다. 다음처럼 입력해보자.

 

>>> a = "Life is too short, You need Python"
>>> a[0:4]
'Life'

여기서 의문이 들 것이다. 왜 a[0:3]이 아닌 a[0:4]인가? 그 이유는 간단하다. 슬라이싱 기법으로 a[시작 번호:끝 번호]를 지정할 때 끝 번호에 해당하는 것은 포함하지 않기 때문이다. 이 부분은 문자열 연산에서 가장 혼동하기 쉬운 부분이니 조심하자!

 

문자열 슬라이싱은 다음과 같이 쓰이기도 하니 참고해두자.

 

>>> a[0:2]
'Li'
>>> a[5:7]
'is'
>>> a[12:17]
'short'
>>> a[19:]
'You need Python'
>>> a[:17]
'Life is too short'
>>> a[:]
'Life is too short, You need Python'
>>> a[19:-7]
'You need'

 

슬라이싱으로 문자열 나누기

다음은 자주 사용하게 되는 슬라이싱 기법 중 하나이다.

>>> a = "20010331Rainy"
>>> date = a[:8]
>>> weather = a[8:]
>>> date
'20010331'
>>> weather
'Rainy'

좀 더 디테일하게 나누려면 다음과 같이 슬라이싱할 수도 있다.

>>> a = "20010331Rainy"
>>> year = a[:4]
>>> day = a[4:8]
>>> weather = a[8:]
>>> year
'2001'
>>> day
'0331'
>>> weather
'Rainy'