[Python]파이썬 문자열 자료형 정리 2
Updated:
파이썬의 문자열 데이터 타입을 정리한 두 번째 글입니다.
1. 문자열 데이터 인덱싱Permalink
인덱싱(Indexing)은 무엇인가를 “가리킨다”는 의미로, 인덱싱을 통해 문자열 중 특정 문자를 선택할 수 있습니다. 이때, data[x]
의 방법으로 번호를 매겨 x
번째 문자를 선택할 수 있습니다.
>>> a = "Hello Python"
>>> a[0]
'H'
>>> a[11]
'n'
>>> a[-1]
'n'
>>> a[-0]
'H'
이때, a[11]과 a[-1]은 똑같이 맨 마지막 문자를 선택합니다. 다만, -
문자를 사용하여 뒤에서부터 읽을 때에는 1부터 시작하는데, 0과 -0은 똑같기 때문에 a[0]과 a[-0]은 같은 위치를 나타내기 때문입니다.
2. 문자열 데이터 슬라이싱Permalink
인덱싱은 한 단어를 선택한다면, 슬라이싱(Slicing)은 구간을 선택할 수 있습니다. 슬라이싱은 data[시작번호:끝번호]
의 형태로 할 수 있습니다.
>>> a = "Hello Python"
>>> a[0:5]
'Hello'
이때, ‘o’는 a[4]
이지만, 슬라이싱을 할 때에는 a[0:5]
처럼 마지막 번호를 쓰지 않습니다. 슬라이싱은 끝번호에 해당하는 문자는 포함하지 않기 때문입니다. a[0:5]
를 수식으로 써보자면 다음과 같습니다.
0 <= a < 5
이 수식을 만족하는 것은 a[0], a[1], a[2], a[3], a[4]가 해당되고, 따라서 a[0:5]
는 ‘Hello’에 해당됩니다.
슬라이싱에서 끝번호를 생략하고 data[시작번호:]
의 형태로 사용하게 되면, 시작번호부터 문자열의 맨 마지막까지 선택합니다.
>>> a = "Hello Python"
>>> a[6:]
'Python'
또한, data[:끝번호]
의 형태로 사용하게 되면, 문자열의 첫번째 문자부터 끝번호까지 선택합니다.
>>> a[:5]
'Hello'
data[시작 번호:끝 번호]
에서 시작 번호와 끝 번호를 생략하면 문자열의 처음부터 끝까지를 뽑아냅니다.
>>> a[:]
'Hello Python'
슬라이싱에서도 인덱싱과 마찬가지로 -
기호를 사용할 수 있습니다.
>>> a[0:-7]
‘Hello’
여기서 a[0:-7]는 a[0]에서부터 a[-8]까지를 뜻하며, a[-7]은 포함하지 않습니다.
슬라이싱은 데이터를 다룰 때 자주 사용하는 기법입니다.
>>> a = "20010331Rainy"
>>> year = a[:4]
>>> day = a[4:8]
>>> weather = a[8:]
>>> year
'2001'
>>> day
'0331'
>>> weather
'Rainy'
문자열 “20010331Rainy”를 연도(2001), 날짜(0331), 날씨(Rainy) 등 세 부분으로 나누려면 위와 같이 할 수 있습니다.
Reference
https://wikidocs.net/13#_10
Leave a comment