상세 컨텐츠

본문 제목

4. 파이썬 자료형 - 문자열(3) : 문자열 내장함수

Python/Basic Grammar

by groomi 2022. 3. 17. 01:21

본문

문자열 내장함수

문자열 자료형은 자체적으로 함수를 가지고 있는데 이렇게 특정 자료형이 자체적으로 가지고 있는 함수를 내장함수라고 한다. 내장함수의 사용법은 변수명 뒤에 '.'를 붙인 후 함수 이름을 써주는 것이다. 변수명.함수명 이렇게!

특정 자료형의 내장함수가 아니라 다양한 자료형이 들어갈 수 있는 파이썬에서 제공하는 함수의 경우에는 함수명(변수명)의 형태로 사용하며, 자료형이 정해져 있지 않기 때문에 함수가 변수의 자료명을 자체적으로 판단하고 결과를 출력한다. 이렇게 사용 방법이 다르니 주의하자! 

오늘 배울 함수들은 문자열 자료형이 자체적으로 갖고 있는 내장함수이다.

 

Count : 문자열 내에서 특정 문자의 개수 반환

 

count 함수

변수 a에 "trust"라는 문자열을 대입했다. 

count 함수를 사용하여 문자열 변수 a 안에 t라는 문자가 몇 개 있는지, r이라는 문자가 몇 개 있는지를 도출했다.

개수를 구하고자 하는 문자를 함수의 괄호 안에 넣어주면 된다.

 

===========================================================

 

find : 문자열 내에서 특정 문자가 처음 나온 위치(인덱스)를 반환

 

find 함수

find 함수를 사용하여 문자열 변수 a에서 'o'라는 문자가 문자가 처음 나온 위치를 도출했다. 

o라는 문자는 해당 문자열에 많이 있지만 그 중에서도 첫 번째에 나온 위치는 1이다. 파이썬에서 인덱스는 0부터 센다는 점을 기억하자. 

'h'라는 문자도 마찬가지로 위치를 잘 도출했다.

find 함수에서 해당 문자열에 존재하지 않는 문자나 문자열을 찾는다면 그 결과값은 -1이 나온다. 

b라는 문자는 변수 a에 존재하지 않기에 -1이라는 결과가 나왔다.

 

===========================================================

 

index : 문자열 내에서 특정 문자가 처음 나온 위치(인덱스)를 반환

 

index 함수

index 함수의 기본적인 기능은 find 함수와 같다. 위치를 찾아주는 것!

'o'와 'h' 문자의 경우 find 함수와 동일한 결과값이 나옴을 알 수 있다.

find 함수와 다른 점은 index 함수를 사용할 때 찾는 문자나 문자열이 존재하지 않는다면 오류가 발생한다는 점이다. 

 

===========================================================

 

join : 문자열 삽입

 

join 함수

join 함수를 이용하면 join 함수의 괄호에 들어간 문자열의 각 문자 사이사이에 원하는 문자나 문자열을 삽입할 수 있다.

위의 예시에서 a라는 변수에 ' love '라는 (공백포함) 문자열을 대입했다. 그리고 해당 문자열을 join 함수를 통해 'I'와 'u' 사이에 삽입하게 된 것이다. 

join 함수의 괄호 안에는 문자열 이외에 리스트나 튜플 등의 다른 자료형을 넣을 수도 있다. 

하지만 join 함수 앞의 변수는 자료형이 문자열이어야 한다는 것!

 

===========================================================

 

upper : 대문자로 변환 

 

upper 함수

소문자를 대문자로 바꾸어준다. 이미 대문자라면 아무 일도 일어나지 않는다. 

upper 뒤 괄호에는 아무 것도 넣어주지 않는다. 딱히 지정해줄 값이 필요 없기 때문.

 

===========================================================

 

lower : 소문자로 변환

 

lower 함수

대문자를 소문자로 바꾸어준다. upper와 마찬가지로 lower 뒤의 괄호에도 아무 값도 입력하지 않는다.

 

===========================================================

 

lstrip/rstrip/strip : 왼쪽/오른쪽/양쪽 공백 제거

 

lstrip/rtrip/strip 함수

문자열 중에서 가장 왼쪽/오른쪽/양쪽의 한 칸 이상의 연속된 공백을 모두 제거한다.

 

===========================================================

 

replace : 문자열 내의 특정 부분을 다른 값으로 치환

 

replace 함수

문자열 변수 a에서 'He has'라는 부분을 'I have'로 치환했다.

replace 함수의 사용 방법은 replace(바뀌게 될 문자열, 바꿀 문자열) 이다.

 

===========================================================

 

split : 지정한 구분 기호를 기준으로 문자열을 나누기

 

split 함수

split 함수 뒤 괄호에 아무 값도 입력하지 않으면 자동으로 공백을 기준으로 문자열을 나누게 된다.

원하는 구분 기호가 있다면 그것을 입력해주면 그 구분자를 기준으로 문자열을 나눈다. 

이렇게 split 함수를 통해 나누어진 값들은 리스트에 들어가게 된다.

리스트 자료형에 대한 설명은 다음 글에서...

 

* 참고로, .함수 앞에 꼭 변수가 들어와야 하는 것은 아니다. 문자열이기만 하면 꼭 변수에 대입하지 않더라도 그대로 입력해도 된다. 예를 들어, "Sunny day".split() 이런 식이나 "GOOD".lower() 이런 식으로! 

 

더 다양한 함수들이 있지만, 자주 사용하는 것 위주로 정리되어 있다. 

더 필요한 함수가 있다면 나중에 추가하는 걸로!

관련글 더보기

댓글 영역