본문 바로가기

파이썬/파이썬 개념

[Python] 문자열, 문자열 인덱싱, 문자열 슬라이싱 / 2021.07.29

*참고 자료: Do it! 점프 투 파이썬


*문자열 인덱싱

1. 문자열 인덱싱이란?
a = "Life is too short, You need Python"
a와 같은 문자열이 있을 때, 문자열의 가장 첫 번째 문자 'L'은 a [0]과 같이 나타낼 수 있다.
그다음 'i'는 a [1], 'f'는 a [2]...
*가장 첫 번째 문자라고 해서 a [1]이라고 생각할 수 있는데 파이썬에서는 0부터 숫자를 세기 때문에 a [0]이 아니라 a [1]이다.

a [번호]는 문자열의 특정한 값을 가져오는 역할을 한다.
이것을 "인덱싱"이라고 한다.

1
2
3
4
5
= "Life is too short, You need Python"
 
print(a[0])
print(a[1])
print(a[2])
cs

 

실행결과 :


2. 문자열 인덱싱의 활용
문자열 인덱싱은 음수로도 나타낼 수 있다.
문자열의 가장 마지막 문자의 번호는 -1이다. a [-1]은 'n'을 나타낸다.
그 앞의 문자는 a [-2], a [-3]...... 순으로 나타내 진다.

1
2
3
4
5
= "Life is too short, You need Python"
 
print(a[-1])
print(a[-2])
print(a[-3])
cs

 

실행결과 :


* 문자열 슬라이싱

1. 문자열 슬라이싱이란?
문자열 인덱싱은 문자열 안에서 단순히 한 문자를 뽑아내는 것이라면, 문자열 슬라이싱은 여러 문자를 뽑아낼 수 있다.
a = "Life is too short, You need Python"에서 'Life'를 뽑아내기 위해서는 a [0:4]를 이용하면 된다.
a [시작번호:끝번호] -> 끝번호에 해당하는 건 가져오지 않는다. 가져오는 것은 끝번호의 앞번호이다.

2. 문자열 슬라이싱의 활용
문자열 슬라이싱의 방법에는 여러 가지가 있다.

(1) 슬라이싱할 때 시작번호가 0이 아니어도 된다.
ex) a [5:7]

1
2
3
4
5
= "Life is too short, You need Python"
 
print(a[0:4])
print(a[5:7])
print(a[12:17]
cs

 

실행 결과 :


(2) 끝 번호를 생략하면 시작번호부터 문자열 끝까지 가져오는 것을 말한다.
ex) a [19:]

1
2
3
= "Life is too short, You need Python"
 
print(a[19:])
cs

 

실행 결과 :


(3) 시작 번호를 생략하면 문자열 처음부터 끝 번호까지 가져온다.
ex) a [:17]

1
2
3
= "Life is too short, You need Python"
 
print(a[:17])
cs

 

실행 결과 :


(4) 시작번호와 끝번호 모두 생략하면 문자열의 처음부터 끝까지 가져온다.
ex) a [ : ]

1
2
3
= "Life is too short, You need Python"
 
print(a[:])
cs

 

실행 결과 :


(5) 슬라이싱에서도 음수 인덱스 사용이 가능하다.
ex) a [19:-7]

1
2
3
= "Life is too short, You need Python"
 
print(a[19:-7])
cs

 

실행 결과 :

a [19:-7]은 19번에서 -8번까지 가져오는 것을 뜻한다. a [-7]은 포함하지 않는다.