Basic Methods of String
프로그래밍에서 가장 많이 다루는 데이터는 text라고 할 수 있다.
- Raw data에서
str
(string)은 numerical data 이상으로 가장 애용되는 데이터임.- preprocessing 등을 통해 해당 text data는 numerical data로 변경(주로 vector)되는 경우가 매우 많음.
- 과학이나 연구분야가 아닌 경우, 사실상
str
문자열이 가장 많이 애용되는 raw data type이라고 볼 수 있음.
이 문서에서는
Python이 기본적으로 제공하는 str
class에서 다양한 built-in method들의 사용법을 간략히 정리한다.
대소문자 처리 (~ Case Conversion)
lower
: 전부 소문자.upper
: 전부 대문자.capitalize
: 첫 단어의 첫글자만 대문자title
: 각 단어의 첫글자 대문자.swapcase
: 대소문자를 바꾸어줌.
체크 메소드
islower
: 전부 소문자인가?isupper
: 전부 대문자인가?isspace
: 전부 whitespace 문자인가? (전부 whitespace인지를 판별, \t
, \n
도 whitespace 문자임.isdigit
: 전부 숫자인가?isalpha
: 전부 alphabetic character인가? (한글문자도 포함됨)isalnum
: 전부 숫자 또는 문자인가? (puncuation mark character(문장부호문자)가 없어야 함.)startswith
: argument로 주어진 문자열로 시작하는가?endswith
: argument로 주어진 문자열로 끝나는가
앞뒤의 공백문자 (whitespace) 제거
strip
: 앞뒤의 공백문자를 제거함(기본모드). argument로 제거할 문자들로 구성된 string을 줄 수도 있음.lstrip
: 왼쪽(앞쪽)의 공백문자를 제거함(기본모드). argument로 제거할 문자들로 구성된 string을 줄 수도 있음.rstrip
: 오른쪽(뒤쪽)의 공백문자를 제거함(기본모드). argument로 제거할 문자들로 구성된 string을 줄 수도 있음.
제거할 문자들로 구성된 문자열을 argument로 넘겨주어 복수 개의 제거할 문자들의 할당이 가능함.
특정 구분문자로 문자열 나누어 list로 저장(Tokenize)
split
: sep
이라는 키로 delimeter (or separator, 구분문자)로 사용할 string을 입력받고 이들로 string을 나누고 그 결과를 list에 저장.
- separator argument가 주어지지 않을 경우, whitespace(공백문자) sequences (newline, space, tab)를 기본 delimeter로 삼아 처리함.
split는 나누는 것이니 합치는 것도 있음.
그것이 바로 join 메서드임.
특정 glue character로 string들을 item으로 가지는 list를 concatenation
join
: 호출하는 string을 glue character로 삼아, argument로 넘어오는 list의 문자열들을 결합함.
특정 substring의 갯수 세기
count
:
- argument로 넘겨준 substr이 호출한 str 의 내부에 몇 개 존재하는지를 count.
- Python은 case sensitive임을 잊지 말 것
특정 substring이 시작하는 index (=위치) 찾기
index
:
- argument로 받은 sbustring이 "호출한 string의 어디에서 시작"하는지를 index로 반환.
- zero부터 index가 시작함을 주의.
- 해당 substring이 없는 경우
ValueError
발생.
find
:
- 위에서 설명한
index
와 같은 기능을 수행. - 단, 없을 경우엔 -1을 반환하는게 차이점
- exception이 발생하지 않기를 원한다면 find를 사용하는게 낫다.
특정 문자열 바꾸기 (substitution, 치환.).
치환이라고도 함.
이름과 달리 원래의 str
은 변경되지 않고, 치환의 결과가 되는 새로운 str
이 반환됨.
replace
:
- method로 호출되어 호출된 str을 원래의 문자열로 삼아
- argument로 받은 바뀔 대상이 되는 부분문자열을 "바꿀 새로운 부분문자열로 교체"하여
- 새로 만들어진 new str을 반환함.
Layout Alignment
center
:
- 가운데 정렬.
- argument로 전체 문자열의 길이가 주어짐.
- 100으로 주어지면 해당 100글자의 공간에 가운데에 str을 배치.
ljust
: 왼쪽 정렬.rjust
: 오른쪽 정렬.
'Programming' 카테고리의 다른 글
[Python] str : Overloaded Operators (0) | 2023.07.02 |
---|---|
[Python] pip 란 (Package Management System) (0) | 2023.06.22 |
[Python] f-String (1) | 2023.06.21 |
[Python] Assignment (Basic) (0) | 2023.06.20 |
[Python] Module Search Path and sys.path (0) | 2023.06.18 |