파이썬에는 문자열을 다루기 쉬운 메소드가 많이 있습니다.
이것들은 코딩테스트에 유용하게 사용됩니다.
하나씩 정리하자
join
예를 들어 설명하겠습니다.
greeting = "안녕하세요"
print("메".join(greeting))
// 가독성을 위해 "메" 부분은 보라색 글씨로 지정하였습니다.
출력 결과 : 안메녕메하메세메요
위와 같이, join은 특정문자열.join(객체)로 사용할 수 있습니다.
여기서 객체는 문자열 뿐만 아니라 리스트, 튜플, dictionary도 가리킵니다.
특정문자열이 객체에 사이사이마다 들어가서 합쳐집니다.
위의 예시는 "메"가 안녕하세요 사이사이 들어가서 출력 결과가
안메녕메하메세메요 로 나온 것을 알 수 있습니다.
이번에는 리스트에 join을 적용해보겠습니다.
phone = ["010", "0000", "0000"]
print("-".join(phone))
출력 결과 : 010-0000-0000
split
split는 특정 문자를 기준으로 문자열을 분리할 수 있습니다. 결과는 리스트로 출력합니다.
exercise = "010-0000-0000"
print(exercise.split("-"))
출력 결과 : ['010', '0000', '0000']
split은 괄호 안에 문자열을 지정해주어 그 문자열을 기준으로 .split 앞에 있는 것을 분리합니다. (parsing)
분리한 것은 list로 출력이 됩니다.
list로 출력되므로 원하는 부분은 인덱스로 지정해 사용할 수 있습니다.
replace
replace는 문자열의 일부분을 다른 문자열로 바꾸어주는 것입니다.
전체문자열.replace(바꿀 문자열, 대체할 문자열)
greeting = "안녕하세요. 김민석입니다. 안녕하세요. 프링글스. 안녕하세요. 에어팟"
print(greeting.replace("안녕하세요", "Hi"))
출력 결과 : Hi. 김민석입니다. Hi. 프링글스. Hi. 에어팟
greeting 안의 안녕하세요를 찾아 Hi로 바꾸어주어 출력해주었습니다.
strip
strip은 문자열의 처음과 끝에 있는 공백을 제거해줍니다.
message = " 감자와 고구마는 맛있어 "
print(message.strip())
출력 결과 : 감자와 고구마는 맛있어
주의 : 문자열 사이사이에 있는 공백은 제거되지 않는 것을 확인할 수 있습니다. 이 부분도 제거하고 싶으면 replace를 사용해주면 됩니다.
message.replace(" ", "")
find
find는 문자열에서 특정 문자열이 있는지를 체크할 때 사용합니다.
만약 있다면, 해당 문자열의 가장 앞 인덱스를 출력해줍니다.
content = "BTS, 손흥민, 봉준호"
print(content.find("손흥민"))
출력 결과 : 5
아예 없는 문자열을 find하면 -1을 출력합니다.
print(content.find("한글"))
출력 결과 : -1
'코딩테스트' 카테고리의 다른 글
파이썬 코딩테스트에서 자주 사용되는 표준 라이브러리 (4) bisect (0) | 2024.07.02 |
---|---|
파이썬 코딩테스트에서 자주 사용되는 표준 라이브러리 (3) itertools (0) | 2024.06.30 |
파이썬 코딩테스트에서 자주 사용되는 표준 라이브러리 (2) heapq (0) | 2024.06.29 |
파이썬 코딩테스트에서 자주 사용되는 표준 라이브러리 (1) collections (0) | 2024.06.28 |
파이썬 코딩테스트 문자열 꿀팁 (2) (0) | 2022.11.05 |