[Python]파이썬 기본문법4 문자열의 기초4
문자열의 마지막 내용으로는 슬라이싱에 대해 알아보겠습니다.
파이썬에서 문자열을 슬라이싱한다고 하면 1편에서 배운 인덱싱을 사용하여 어떤 범위의 문자열들을 짤라내는것을 의미합니다.
슬라이싱이라는 기법없이 인덱싱되어있는 문자열만을 가지고 단어를 뽑아내려면 여간 귀찮은게 아닙니다. 인덱싱을 통하여 해당 인덱스도 알아내야하고 그 이후에 하나하나 다 출력해야합니다.
1 2 3 4 5 6 7 8 | a = 'My life for Auier' # 0 1 # 01234567890123456' 인덱싱 표시 list1 = [12,13,14,15,16] b='' for i in list1: b=b+a[i] print(b) | cs |
더 보기 쉽게 할 수 있지만 루프를 연습하기 위해서 ...
인덱스 12번부터 16번까지를 새로운 스트링 b로합쳐서 출력하는 모습입니다. 하지만 여기서 슬라이싱을 사용한다면!
1 2 3 4 5 6 | a = 'My life for Auier' # 0 1 # 01234567890123456' 인덱싱 표시 b=a[12:17] print(b) | cs |
이렇게 한번에 됩니다. 다음 사진은 결과값!
이렇게 슬라이싱을 사용하면 문자열을 쉽게 사용할 수 있습니다. 이 기능은 나중에 데이터 관리 에도 많이 쓰이니 확실히 알아두면 좋을듯 합니다.
그럼 좀 자세히 살펴보겠습니다.
b=a[12:17]
이 문법을 살펴보면, "a[12]~a[17]까지 b에 저장하라" 라는 의미라고 생각할 수 있지만 실제로는 "a[12]~a[17-1]까지 b에 저장하라 입니다.
b= a[x:y]
x값은 첫 인덱스값, y는 마지막 인덱스값 + 1 이 되겠습니다. 까먹고 마지막 인덱스값을 사용했다간 마지막 글자가 짤려나올것입니다.
또한 빈칸이 있을 수 있습니다
b=a[x:]
b=a[:y]
b=a[:]
이 실행문의 의미들은 간단합니다. 빈칸 = 전체 문자열의 첫번째 혹은 마지막 입니다.
b=a[x:] --> 인덱스값 x서부터 마지막까지
b=a[:y] --> 처음부터 인덱스값 y 까지
b=a[:] --> 처음부터 끝까지 (.....)
이런식으로 사용이 가능합니다.
이걸로 기본적인 문자열에대한 설명을 끝내겠습니다. 이 문자열은 나중에도 계속 조금씩 다룰것이지만 잊지 말아야할것이 있습니다. 전에도 한번 명시했지만 바로 문자열은 변환하여 반환이 가능하되 실제적인 변경은 불가능하다는것입니다. 그 당장에는 바꿔서 프린트가 가능해도 실질적인 값을 바꾸는건 불가능하다는 의미입니다.