Programming Languages/Python

[Python] 문자열 관련 유용한 함수들

마크투비 2022. 2. 18. 16:13

문자열 관련 유용한 함수들


파이썬은 문자열 관련 유용한 함수들을 많이 제공한다. 아래에서 소개하는 함수들은 문자열 처리에서 사용 빈도가 매우 높고, 유용하므로 꼭 암기하도록 하자!! 🧐

문자 개수 세기 (count)

a = "gummy"
a.count('m')
print(a.count('m')) # 2

문자열 중 특정 문자의 개수를 반환한다.

위치 알려주기1 (find)

a = "my name is gummy"
a.find('g')
print(a.find('g')) # 11
print(a.find('gu')) # 11
print(a.find('k')) # -1

문자열 중 특정 문자 혹은 문자열이 처음 나온 위치를 반환한다. 파이썬은 인덱스가 0부터 시작임에 주의한다. 만약 찾는 문자나 문자열이 존재하지 않는다면 -1을 반환한다.

위치 알려주기2 (index)

a = "my name is gummy"
a.index('g')
print(a.index('g')) # 11
print(a.index('gu')) # 11
# print(a.index('k')) # !!! 오류 !!!

find()와 마찬가지로 문자열 중 특정 문자 혹은 문자열이 처음 나온 위치를 반환한다. 다른 점은 찾으려는 문자가 존재하지 않으면 오류를 발생시킨다.

문자열 삽입 (join)

a = "my name is gummy"
a.join("...")
print(a.join("..."))
# 실행 결과
# .my name is gummy.my name is gummy.

a = "."
print(a.join("abcd"))
# 실행 결과
# a.b.c.d

문자열1.join(”문자열2”)라면 문자열2의 각 문자 사이에 문자열1을 삽입한다. 위의 예제 코드를 암기하는 것이 좋다.

소문자를 대문자로 바꾸기 (upper)

a = "hi my name is gummy"
print(a.upper())
# HI MY NAME IS GUMMY

대문자를 소문자로 바꾸기 (lower)

a = "hi MY NAME IS gummy"
print(a.lower())
# hi my name is gummy

왼쪽 공백 지우기 (lstrip)

a = "   gumm y "
print(a.lstrip())
# 'gumm y '

문자열의 가장 왼쪽에 있는 한 칸 이상의 연속된 모든 공백을 지운다.

오른쪽 공백 지우기 (rstrip)

a = "   gumm y "
print(a.rstrip())
# '   gumm y'

왼쪽 공백 지우기 (lstrip)

a = "   gumm y "
print(a.strip())
# 'gumm y'

문자열 바꾸기 (replace)

a = "my name is gummy"
print(a.replace("gummy", "bear"))
# my name is bear

문자열 내의 특정한 값을 다른 값으로 치환할 때 사용한다. 문자열.replace(”이전문자열”, “이후문자열”)

문자열 나누기 (split)

a = "my name is gummy"
print(a.split()) # 공백을 기준으로 문자열을 나눔
# ['my', 'name', 'is', 'gummy']

a = "a:b:  c: d::"
print(a.split(":"))
# ['a', 'b', '  c', ' d', '', '']

a.split()처럼 괄호 안에 아무것도 안 넣으면 공백(스페이스, 탭, 엔터 등)을 기준으로 문자열을 나누어 리스트로 각 문자열들을 반환해준다.