문자열 인덱싱
- 파이썬에서 문자열 인덱싱은 [a:b] 으로 사용 가능하며 a부터 b-1 까지의 문자열을 잘라낸다는 뜻이다.
- 예를들어, "문자열".[0:3] 은 0번째부터 `3 - 1` 인 2번째까지의 문자를 추출하겠다는 의미이다.
count()
- count 메서드는 해당하는 문자열이 몇개 있는지 찾아주는 메서드이다.
s = '내가 그린 기린 그림은 목 긴 기린 그림이고, 네가 그린 기린 그림은 목 짧은 기린 그림이다.'
print(s.count('기린')) # 4
s = 'best of best'
print(s.count('best', 5)) # 5번째 부터 best 문자열을 찾아라
print(s.count('best',-7)) # -7번째 부터
find(), index()
- 둘 다 특정 문자열의 위치를 반환해주는 메서드로, find() 는 값을 못찾을 경우 -1을 반환하고,
index() 는 값을 못찾을 경우, 에러를 발생시킨다.
a = 'apple'
s = 'best of best'
print(a.find('p')) # 해당 인덱스 번호를 알려줌 1
print(a.find('s')) # 없는 경우 -1 반환 -1
print(s.find('best')) # 0
print(s.find('best', 5)) # 지정한 인덱스부터 검색 8
print(a.index('p')) # 1
print(a.index('x')) # 없는 경우 에러 발생
대소문자 변환
s = 'BEST of best'
print(s.upper()) # 대문자 BEST OF BEST
print(s.lower()) # 소문자 best of best
print(s.capitalize()) # 첫 글자만 대문자 Best of best
join()
a = '-'.join('python')
print(a) # p-y-t-h-o-n
b = '+'.join(['a','b','c','d'])
print(b) # a+b+c+d
c = ''.join(['x','y','z'])
print(c) # xyz
d = ''.join({'a' : 'apple', 'b' : 'banana'}) # key만 사용
print(d) # ab
split()
a = 'Life is too short'
print(a.split()) # 공백을 기준으로 나눈다 ['Life', 'is', 'too', 'short']
b = '010-1234-5678'
print(b.split('-')) # - 을 기준으로 나눈다 ['010', '1234', '5678']
c = '제임스,25,남,서울'
print(c.split(',')) # , 을 기준으로 나눈다 ['제임스', '25', '남', '서울']
replace()
a = 'Life is too short'
b = '010-1234-5678'
print(a.replace('Life','Leg')) # Leg is too short
print(b.replace('-','')) # 01012345678
strip()
a = ' apple'
print(a) # apple
print(len(a)) # 10
b = a.lstrip() # 왼쪽 공백 제거, rstrip() : 오른쪽 공백 제거
print(b) # apple
print(len(b)) # 5
c = '<head<'
print(c.strip('<')) # 양쪽의 < 문자 제거 head
마무리
오늘은 문자열과 관련된 메서드에 대해서 공부해보았습니다.
다음에는 List (배열) 과 관련된 메서드 및 Tuple , Set , Dictionary 에 대해서 알아보도록 하겠습니다.
감사합니다.