Python

문자열 내장 함수

서영환 2024. 6. 20. 17:37

파이썬에는 문자열 처리를 위해 다양한 내장 함수와 메서드가 제공

 

  • 문자열 생성 및 조작

    - `str()`: 객체를 문자열로 변환
    - `len()`: 문자열의 길이를 반환

  • 문자열 검색 및 검사

    - `str.find(sub)`: 문자열에서 부분 문자열 `sub`의 첫 번째 발생 위치를 반환  찾지 못하면 `-1`을 반환
    - `str.rfind(sub)`: 문자열에서 부분 문자열 `sub`의 마지막 발생 위치를 반환  찾지 못하면 `-1`을 반환
    - `str.index(sub)`: 문자열에서 부분 문자열 `sub`의 첫 번째 발생 위치를 반환 찾지 못하면 `ValueError`를 발생
    - `str.rindex(sub)`: 문자열에서 부분 문자열 `sub`의 마지막 발생 위치를 반환 찾지 못하면 `ValueError`를 발생
    - `str.startswith(prefix)`: 문자열이 주어진 접두사 `prefix`로 시작하면 `True`를 반환
    - `str.endswith(suffix)`: 문자열이 주어진 접미사 `suffix`로 끝나면 `True`를 반환
    - `str.isalpha()`: 문자열이 알파벳 문자로만 이루어져 있는지 확인
    - `str.isdigit()`: 문자열이 숫자로만 이루어져 있는지 확인
    - `str.isalnum()`: 문자열이 알파벳 문자와 숫자로만 이루어져 있는지 확인
    - `str.isspace()`: 문자열이 공백 문자로만 이루어져 있는지 확인
    - `str.islower()`: 문자열이 모두 소문자로 이루어져 있는지 확인
    - `str.isupper()`: 문자열이 모두 대문자로 이루어져 있는지 확인
    - `str.istitle()`: 문자열이 제목 형식(각 단어의 첫 글자가 대문자)인지 확인

  • 문자열 변환

    - `str.lower()`: 문자열을 소문자로 변환
    - `str.upper()`: 문자열을 대문자로 변환
    - `str.capitalize()`: 문자열의 첫 글자를 대문자로 변환
    - `str.title()`: 문자열의 각 단어의 첫 글자를 대문자로 변환
    - `str.swapcase()`: 문자열의 대문자는 소문자로, 소문자는 대문자로 변환
    - `str.replace(old, new)`: 문자열에서 부분 문자열 `old`를 `new`로 변경
    - `str.strip()`: 문자열의 양쪽 끝에서 공백 문자를 제거
    - `str.lstrip()`: 문자열의 왼쪽 끝에서 공백 문자를 제거
    - `str.rstrip()`: 문자열의 오른쪽 끝에서 공백 문자를 제거
    - `str.zfill(width)`: 문자열의 길이를 `width`로 맞추기 위해 왼쪽에 0을 변경

  • 문자열 분할 및 결합

    - `str.split(sep)`: 문자열을 구분자 `sep`로 나누어 리스트로 반환
    - `str.rsplit(sep)`: 문자열을 구분자 `sep`로 오른쪽부터 나누어 리스트로 반환
    - `str.splitlines()`: 문자열을 줄바꿈 문자를 기준으로 나누어 리스트로 반환
    - `str.join(iterable)`: 문자열의 요소들을 구분자로 결합하여 새로운 문자열을 생성

  • 기타 유용한 메서드

    - `str.count(sub)`: 문자열에서 부분 문자열 `sub`의 발생 횟수를 반환
    - `str.center(width)`: 문자열을 주어진 `width`로 중앙 정렬하고, 나머지 부분을 공백으로 변경
    - `str.ljust(width)`: 문자열을 주어진 `width`로 왼쪽 정렬하고, 나머지 부분을 공백으로 변경
    - `str.rjust(width)`: 문자열을 주어진 `width`로 오른쪽 정렬하고, 나머지 부분을 공백으로 변경
    - `str.partition(sep)`: 문자열을 구분자 `sep`을 기준으로 세 부분으로 나누어 튜플로 반환
    - `str.rpartition(sep)`: 문자열을 구분자 `sep`을 기준으로 오른쪽부터 세 부분으로 나누어 튜플로 반환
    - `str.expandtabs(tabsize)`: 문자열의 탭 문자를 주어진 `tabsize`에 따라 공백으로 확장