[파이썬] 문자열 메서드
목차
- 함수 VS 메서드
- split()
- join()
- find()
- replace()
- upper(), lower(), capitalize()
- strip()
함수 VS 메서드
함수: 단독 실행한다.
메서드: 누군가에 의해서(객체) 실행된다.
함수는 그냥 함수 자체에서 실행되는 구조이고 메서드는 클래스라는 구조 안에서 메서드가 구현되고 객체라는 걸 생성해서 객체에 의해서 실행되는 구조입니다. 지금은 그냥 함수와 메서드는 이런 거구나라고 이해하시면 됩니다!
파이썬에서 메서드를 사용할 때는 .메서드() 이렇게 사용합니다.
split()
split() 메서드는 문자열을 분리해서 리스트로 반환하는 메서드입니다.
사용 방법)
반환받을 변수 = 문자열.split(자르고 싶은 문자열)
예제)
birthday = '2001-08-09'
a = birthday.split('-')
print(a[0], a[1], a[2])
출력 결과:
2001 08 09
join()
join() 지정된 문자열을 이용해서 모든 문자열을 연결하는 메서드입니다.
사용 방법)
반환받을 변수 = 문자열.join(문자열을 연결할 문자열)
예제)
date = ['2021', '08', '09']
d = '-'.join(date) # '2021-08-09'
print(d)
d1 = ''.join(date) # '20210809' ,'' 이렇게 사용할 경우 모든 문자열을 이어준다.
print(d1)
출력 결과
2021-08-09
20210809
find()
find() 메서드는 지정한 문자열에 인덱스(index)를 반환하는 메서드입니다. 만약 찾는 문자열이 2개 이상 존재할 경우 제일 첫 번째 문자열에 인덱스를 반환합니다.
-
find() : 왼쪽에서부터 문자열을 찾습니다.
-
rfind(): (right + find) 오른쪽에서부터 문자열을 찾습니다.
사용 방법)
반환받을 변수 = 문자열.find(찾을 문자열)
예제)
d = 'hello python'
idx1 = d.find('hello') # h와 같은 의미이다.
print(idx1)
idx2 = d.find('o')
print(idx2)
idx3 = d.rfind('o') # (right + find : 오른쪽에서 검색 시작), 그냥 find는 외쪽부터 검색 시작
print(idx3)
출력 결과:
0
4
10
replace()
replace() 메서드는 문자열에 일부를 다른 문자열로 바꾸고 반환하는 메서드입니다.
사용 방법)
반환받을 문자열 = 문자열.replace(변경할려는 문자열, 변경할 문자열)
예제)
message = '안녕 수잔'
message = message.replace('수잔', '제시카')
print(message)
출력 결과:
안녕 제시카
replace() 메서드는 문자열을 변경할 때 사용하지만 문자열을 제거할 때도 사용 가능합니다.
사용 방법)
반환받을 문자열 = 문자열.replace(제거 하려는 문자열, '')
'' 이렇게만 사용할 경우 문자열에 아무 값도 넣지 않겠다는 의미입니다. 즉 그냥 변경할 문자열만 사라지게 됩니다.
예제)
tag = '<head>' # '<' , '>' 제거
tag = tag.replace('<', '').replace('>', '')
print(tag)
출력 결과:
head
메서드는 한 줄에 여러 번 사용이 가능합니다. 여러 번 사용할 경우 .메서드()로 연결해 주면 됩니다. 메서드를 한 줄에 여러 번 사용할 경우 왼쪽부터 오른쪽 순으로 실행됩니다.
upper(), lower(), capitalize()
upper(): 대문자로 변환
lower(): 소문자로 변환
capitalize(): 문자열에 첫 글자만 대문자로 변환하고 나머지를 소문자로 변환
사용 방법)
반환받을 변수 = 문자열.upper()
반환받을 변수 = 문자열.lower()
반환받을 변수 = 문자열.capitalize()
예제)
sample = 'i Am a BOY'
r1 = sample.upper() # 대문자 변환
r2 = sample.lower() # 소문자 변한
r3 = sample.capitalize() # 첫 글자만 대문자
print(r1, r2, r3, sep='\n')
출력 결과:
I AM A BOY
i am a boy
I am a boy
strip()
strip() 메서드는 앞뒤에 불필요한 문자(열)을 제거하는 메서드입니다. 단 중간 문자열은 제거가 불가능합니다.
예제)
s = ' banana juice '
print(f'{s.strip()}') # 아무것도 지정하지 않을 경우 앞뒤 공백이 제거된다.(중간은 제거 불가능)
출력 결과:
banana juice
lstrip(): left + strip (왼쪽 문자(열)을 제거)
rstrip(): right + strip (오른쪽 문자(열)을 제거)
예제)
s2 = '<head>' # '<', '>' 제거
s2 = s2.lstrip('<').rstrip('>')
print(s2)
출력 결과:
head
이상으로 파이썬 문자열 메서드에 대해서 알아봤습니다. 잘못된 부분이나 부족한 부분 있다면 피드백 감사하겠습니다!!!
Author And Source
이 문제에 관하여([파이썬] 문자열 메서드), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@sunnamgung8/파이썬-문자열-메서드저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)