Python

[Python / 기초] 파이썬 문자열메소드 - capitalize, title, upper, lower, join, strip, replace, find, index, split, count

씨주 2024. 1. 12. 11:19

📍 Method(메소드)

 

✅ 문자열 Method

a = 'hello my name is heeju'
# 문자열(String)은 수정불가능(immutable)
a[0] = 'H'
더보기
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
Cell In[2], line 2
      1 # 문자열(String)은 수정불가능(immutable)
----> 2 a[0] = 'H'

TypeError: 'str' object does not support item assignment

✔️ capitalize

# 첫글자 대문자
a.capitalize() # 'Hello my name is heeju'

✔️ title

# 단어 첫글자 대문자
a.title() # 'Hello My Name Is Heeju'

✔️ upper

# 모든글자 대문자
a.upper() # 'HELLO MY NAME IS HEEJU'

✔️ lower

# 모든글자 소문자
a.lower() # 'hello my name is heeju'

✔️ join

# 리스트에 있는 요소들 사이 구분자를 넣어 문자열로 반환
my_list = ['hi', 'my', 'name']
'/'.join(my_list) # 'hi/my/name'

✔️ strip

  • strip
  • lstrip
  • rstrip
my_string = '            hello        '
print(my_string) #             hello        
# 문자열 앞 뒤 공백 삭제(문자열 중간은 삭제되지 않음)
print(my_string.strip()) # hello
my_string2 = 'hihihihihellohihihi'
print(my_string2) # hihihihihellohihihi
# h와 i를 제거하기 때문에 ello가 출력
print(my_string2.strip('hi')) # ello
# 왼쪽만 제거
print(my_string2.lstrip('hi')) # ellohihihi
# 오른쪽만 제거
print(my_string2.rstrip('hi')) # hihihihihello

✔️ replace

: replace(old, new, count)

# old를 new로 대체 (count가 있을 경우 count만큼)
a = 'woooooooow'
print(a.replace('o', '!')) # w!!!!!!!!w
# count 선택사항
print(a.replace('o', '!', 3)) # w!!!ooooow

✔️ find

# index 반환
a = 'apple'
print(a.find('a')) # 0
print(a.find('p')) # 1
# 없을 경우 -1 출력
print(a.find('z')) # -1

✔️ index

# index 반환
a = 'apple'
print(a.index('a')) # 0
# 없을 경우 error 출력
print(a.index('z'))
더보기
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
Cell In[13], line 1
----> 1 print(a.index('z'))

ValueError: substring not found

✔️ split

# 구분자를 기준으로 문자열 분리하여 리스트로 반환
a = 'my_name_is'
a.split('_') # ['my', 'name', 'is']

✔️ count

# 문자열에 해당 str갯수
'woooooooow'.count('o') # 8