[python] 텍스트 처리 - 문자열 다루기

Hello World·2024년 10월 3일

PythonNotebook

목록 보기
7/13
post-thumbnail

list()

  • 문자열의 각 문자를 리스트 요소로 분리해 주는 함수
my_string = "Hello"
characters = list(my_string)  # 문자열을 리스트로 변환시킴
print(characters)   
# ['H', 'e', 'l', 'l', 'o']

split()

  • 문자열을 단어들의 리스트로 바꾸는 메소드
  • 주어진 분리자 문자를 이용하여 문자열을 단어들로 분리한다. 별도의 분리자
    문자를 지정하지 않을 경우 공백 문자를 이용하여 분리한다.
s = 'Welcome to Python'
print(s.split())
# ['Welcome', 'to', 'Python']
s = '2024.8.15'
print(s.split('.'))  # # 마침표로 분리하기
# ['2024', '8', '15']

join()

  • 부분 문자열들을 모아서 하나의 문자열로 만드는 역할을 하는 함수
  • join()을 호출할 때는 접착제 역할을 하는 문자를 지정할 수 있다.
s1 = ','.join(['apple', 'grape', 'banana'])  # 쉼표로 문자열 결합
print(s1)  # apple,grape,banana

s2 = '-'.join('010.1234.5678'.split('.'))  # .으로 구분된 전화번호를 하이픈(-)으로 고치기
print(s2)  # 010-1234-5678

count()

  • 문자열 중에서 특정 문자열이 등장하는 횟수를 반환하는 메서드
url = 'www.naver.com'
print(url.count('.'))  # 2

startswith()와 endswith()

  • 문자열이 특정 문자열로 시작하는지 또는 끝나는지 여부를 확인한다.
s = 'Hello, World!'
print(s.startswith('Hello'))  # 'Hello'로 시작하는지 확인하기
print(s.endswith('.'))  	  # '.'으로 끝나는지 확인하기

# True
# False

lower(), upper(), capitalize()

  • lower(): 문자열에서 대문자를 소문자로 변경하는 메서드
  • upper(): 문자열에서 소문자를 대문자로 변경하는 메서드
  • capitalize(): 첫 번째 문자만 대문자로 변환하는 메서드
s = 'Hello, World!'
print(s.lower())  		# 문자열을 소문자로 변환
print(s.upper())  		# 문자열을 대문자로 변환
print(s.capitalize())   # 첫 번째 문자만 대문자로 변환

# hello, world!
# HELLO, WORLD!
# Hello, world!

replace()

  • 문자열에서 특정 문자열을 다른 문자열로 치환하는 메서드
s = 'Hello, World!'
print(s.replace('World', 'Python'))
# 'Hello, Python!'
# 마침표나 쉼표와 같은 구두점 제거하기 => 훈련 데이터 크기 줄이는 데 도움이 됨
s = 'Hello, World!'
print(s.replace('!', ''))
# 'Hello, World'

strip()

  • 문자열에서 원치 않는 공백을 제거하는 메서드
  • strip(): 문자열의 첫 부분과 끝부분에서 공백 문자만을 제거하며, 문자 사이의 공백은 제거하지 않는다.
  • lstrip(), rstrip(): 각각 문자열의 왼쪽, 오른쪽의 공백 문자를 제거한다.
# 공백 제거하기 - strip()
s = '    Hello, World!    '
print(s.strip())   # 왼쪽과 오른쪽의 공백 문자 모두 제거
print(s.lstrip())  # 왼쪽 공백 문자만 제거
print(s.rstrip())  # 오른쪽 공백 문자만 제거
# Hello, World!
# Hello, World!    
#     Hello, World!

find()

  • 문자열에서 지정된 부분 문자열을 찾아서 그 인덱스를 반환한다.
  • 지정된 문자를 찾지 못했을 경우에는 –1을 반환한다.
  • 문자열 중에서 관심 있는 부분을 찾을 때 사용하면 좋다.
url = 'www.naver.com'
print(url.find('.com'))  # 있으면 그 인덱스 봔환
print(url.find('x'))  	 # 없으면 -1 반환

# 9
# -1

index()

  • 문자열 내부의 부분 문자열 또는 문자의 인덱스를 반환한다.
  • 부분 문자열이나 문자를 찾을 수 없으면 예외가 발생한다.
url = 'www.naver.com'
idx = url.index('n')
print('url에서 "n" 인덱스 =', idx)
# url에서 "n" 인덱스 = 4

0개의 댓글