오늘은 지난번 학습한 자료형 기초를 바탕으로, 다양한 메서드를 활용, 메소드 체이닝 등 고급 기능에 대해 알아보도록 하겠습니다. 혹시 파이썬 문자열 자료형을 처음 접하신 분은 지난 글을 먼저 읽고 오시기 바랍니다!
1. 파이썬 문자열 자료형 – 메소드 활용법
파이썬 문자열 메서드란, 파이썬에서 문자열을 다루는데 사용되는 여러 가지 함수들을 말합니다. 이러한 메서드들은 문자열을 조작하거나 변환하는데 사용되며, 문자열 내에서 특정한 작업을 수행할 수 있도록 도와줍니다.
문자열 메서드를 사용하여 문자열을 분리하거나 결합하거나 검색하거나 수정하는 등 다양한 작업을 수행할 수 있습니다. 이들 메서드를 활용하면 문자열을 효율적으로 다룰 수 있습니다. 문자열 메소드는 문자열로 할당 된 변수와 콤마를 이용하여 호출합니다.
메서드 | 설명 |
---|---|
.len() | 문자열의 길이 반환 |
.lower() | 문자열을 소문자로 변환 |
.upper() | 문자열을 대문자로 변환 |
.strip() | 문자열의 양 끝 공백 제거 |
.replace() | 문자열 내의 특정 문자 치환 |
.split() | 문자열을 지정된 구분자로 분리 |
.join() | 문자열 리스트를 지정된 구분자로 결합 |
.startswith() | 특정 문자열로 시작하는지 여부 확인 |
.endswith() | 특정 문자열로 끝나는지 여부 확인 |
.find() | 문자열 내에서 특정 문자/부분문자열 위치 검색 |
.count() | 문자열 내에서 특정 문자/부분문자열 개수 세기 |
.isdigit() | 문자열이 숫자인지 여부 확인 |
.isalpha() | 문자열이 알파벳 문자인지 여부 확인 |
위에 표시 된 메서드 외에도 정말 많은 기능이 있기 때문에, 이런 기능이 있다고 인지하는 정도로 넘어가시고 필요한 문자열 처리가 생기면 googling을 통해 찾아가는 방식이 빠르게 프로그래밍 실력이 높아지는 비결입니다!
# 문자열 길이 반환
text = "Hello, World!"
length = len(text)
# 문자열을 소문자로 변환
text = "Hello"
lower_text = text.lower()
# 문자열을 대문자로 변환
text = "Hello"
upper_text = text.upper()
# 문자열의 양 끝 공백 제거
text = " Hello "
stripped_text = text.strip()
# 문자열 내의 특정 문자 치환
text = "Hello, World!"
new_text = text.replace("Hello", "Hi")
# 문자열을 지정된 구분자로 분리
text = "apple,banana,orange"
fruits = text.split(",")
# 문자열 리스트를 지정된 구분자로 결합
fruits = ["apple", "banana", "orange"]
text = ", ".join(fruits)
# 특정 문자열로 시작하는지 여부 확인
text = "Hello, World!"
result = text.startswith("Hello")
# 특정 문자열로 끝나는지 여부 확인
text = "Hello, World!"
result = text.endswith("!")
# 문자열 내에서 특정 문자/부분문자열 위치 검색
text = "Hello, World!"
position = text.find("World")
# 문자열 내에서 특정 문자/부분문자열 개수 세기
text = "Hello, Hello, Hello"
count = text.count("Hello")
# 문자열이 숫자인지 여부 확인
text = "12345"
result = text.isdigit()
# 문자열이 알파벳 문자인지 여부 확인
text = "Hello"
result = text.isalpha()
위에 메서드 중에서 is로 시작하는 메서드는 대부분 반환값으로 true, false를 반환합니다. 앞으로 만날 다양한 함수의 네이밍도 유사한 규칙을 따르고 있으니 참고하시면 좋을 것 같습니다!
2. 메서드 체이닝
문자열의 메서드 체이닝은 한 줄의 코드에서 여러 개의 문자열 메서드를 연속적으로 호출하는 기법을 말합니다. 이를 통해 코드를 간결하게 작성하고 여러 단계의 문자열 처리 작업을 한 줄에 연결하여 수행할 수 있습니다. 각 메서드는 이전 메서드의 결과에 대해 실행되며, 연속적으로 적용되는 특징을 가지고 있습니다.
메서드 체이닝을 사용하면 각 단계마다 중간 결과를 변수에 저장하거나 중간 단계의 임시 변수 없이도 여러 작업을 한 줄에 효율적으로 수행할 수 있습니다. 이로써 코드를 보다 간결하고 가독성 높게 작성할 수 있습니다.
아래의 예시를 참고하시기 바랍니다.
# 예시 1: 대소문자 변환 후 공백 제거
text1 = " Hello, World! "
formatted_text1 = text1.strip().lower() # "hello, world!" (공백 제거 및 소문자로 변환)
# 예시 2: 문자열 분리 후 특정 단어 개수 세기
sentence = "Python은 프로그래밍 언어로서 Python"
count_python = sentence.split().count("Python") # 2 ("Python" 단어의 개수)
# 예시 3: 문자열 치환 후 소문자로 변환
message = "Hello, World!"
formatted_message = message.replace("Hello", "Hi").lower() # "hi, world!" (치환 후 소문자로 변환)
# 예시 4: 여러 메서드 체이닝
data = " 1, 2, 3, 4, 5 "
cleaned_data = data.strip().replace(" ", "").split(",") # ['1', '2', '3', '4', '5'] (공백 제거 및 분리)
# 모든 예시 결과 출력
print("예시 1 결과:", formatted_text1)
print("예시 2 결과:", count_python)
print("예시 3 결과:", formatted_message)
print("예시 4 결과:", cleaned_data)
오늘은 파이썬 문자열 자료형의 다양한 메서드를 알아보고, 체이닝을 통해 가독성 높은 코드를 작성하는 고급 기능을 공부하였습니다. 데이터 분석에서 가장 중요한 자료형이니 만큼, 눈으로만 보기 보다는 꼭 한번은 실습을 해보기를 권장 드립니다.
이번 포스팅으로 문자열 자료형은 끝내고 다음주에는 또다른 자료형을 알려 드리도록 하겠습니다.
감사합니다. “끝”