목차
파이썬 알고리즘 인터뷰 6장을 학습하며 작성한 글입니다.
Method
sentence = "Thank you for your inviting!"
count 문자열 내 특정 문자열의 개수를 찾는 함수
# y 개수 반환
sentence.count('y') #2
# sentence[10:]에서 y 개수 반환
sentence.count('y', 10) #1
# sentence[10:13]에서 y 개수 반환
sentence.count('y', 10, 14) #0
find, rfind 문자열 내 특정 문자열의 인덱스를 찾는 함수 (찾는 문자열이 없다면 -1 반환)
# 첫 번째 y의 인덱스
sentence.find('y') #6
# sentence[10:]에서 첫 번째 y의 인덱스
sentence.find('y', 10) #14
# sentence[10:13]에서 첫 번째 y의 인덱스
sentence.find('y', 10, 14) #-1
index find와 동일한 기능 (찾는 문자열이 없다면 오류 발생)
# 첫 번째 y의 인덱스
sentence.index('y') #6
# 첫 번째 z의 인덱스
sentence.index('z') #ValueError: substring not found
upper, lower, swapcase 소문자와 대문자를 변경하는 함수
# 모두 대문자로
sentence.upper() #THANK YOU FOR YOUR INVITING!
# 모두 소문자로
sentence.lower() #thank you for your inviting!
# 소문자는 대문자로, 대문자는 소문자로
sentence.swapcase() #tHANK YOU FOR YOUR INVITING!
capitalize, title 전체, 단어 기준으로 대소문자 변경
# 첫 문자만 대문자, 나머지는 소문자
sentence.capitalize() #Thank you for your inviting!
# 단어의 첫자만 대문자, 나머지는 소문자
sentence.title() #Thank You For Your Inviting!
lstrip, rstrip, strip 앞뒤 공백 제거하는 메소드
example = " example for strip test "
# 왼쪽 공백 제거
example.lstrip() #'example for strip test '
# 오른쪽 공백 제거
example.rstrip() #' example for strip test'
# 왼쪽과 오른쪽 공백 제거
example.strip() #'example for strip test'
replace 특정 문자열만 변경
# y를 P로 변경
sentence.replace('y', 'P') #Thank Pou for Pour inviting!
# 처음부터 count개를 y에서 P로 변경
sentence.replace('y', 'P', 1) #Thank Pou for your inviting!
split 문자열의 특정 단위로 나눠 리스트로 반환
# n을 기준으로 문자열 분리
sentence.split('n') #['Tha', 'k you for your i', 'viti', 'g!']
# 최대 2+1 = 3개로 분리
sentence.split('n', 2) #['Tha', 'k you for your i', 'viting!']
join 반복 가능한 요소들을 하나의 문자열로 연결
word_list = ['A', 'B', 'C', 'D', 'E']
# word_list에 있는 값을 @로 연결해 하나의 문자열 반환
'@'.join(word_list) #A@B@C@D@E
isalpha, isdigit, isalnum 문자열 내 요소가 무엇인지 판단
# A1이 알파벳 또는 한글인지 확인
'A1'.isalpha() #False
'A*'.isalpha() #False
# A1이 숫자인지 확인
'A1'.isdigit() #False
'*1'.isdigit() #False
# A1이 숫자, 알파벳, 한글인지 확인
'A1'.isalnum() #True
'A1*'.isalnum() #False
Problem Solving
01 유효한 팰린드롬
2024.06.06 - [SW개발/Problem Solving] - [LeetCode > Easy > 125] Valid Palindrome
02 문자열 뒤집기
2024.06.09 - [SW개발/Problem Solving] - [LeetCode > Easy > 344] Reverse String
03 로그파일 재정렬
2024.06.09 - [SW개발/Problem Solving] - [LeetCode > Medium > 937] Reorder Data in Log Files
04 가장 흔한 단어
2024.06.09 - [SW개발/Problem Solving] - [LeetCode > Easy > 819] Most Common Word
05 그룹 애너그램
2024.06.09 - [SW개발/Problem Solving] - [LeetCode > Medium > 49] Group Anagrams
06 가장 긴 팰린드롬 부분 문자열
2024.06.09 - [SW개발/Problem Solving] - [LeetCode > Medium > 5] Longest Palindromic Substring
반응형
'Computer Science > Algorithm' 카테고리의 다른 글
Python Algorithm Interview 02 - 리스트, 딕셔너리 (0) | 2024.06.06 |
---|---|
Python Algorithm Interview 01 - 기초 (0) | 2024.06.03 |