Basic Methods of String
프로그래밍에서 가장 많이 다루는 데이터는 text라고 할 수 있다.
- Raw data에서
str
(string)은 numerical data 이상으로 가장 애용되는 데이터임.- preprocessing 등을 통해 해당 text data는 numerical data로 변경(주로 vector)되는 경우가 매우 많음.
- 과학이나 연구분야가 아닌 경우, 사실상
str
문자열이 가장 많이 애용되는 raw data type이라고 볼 수 있음.
이 문서에서는
Python이 기본적으로 제공하는 str
class에서 다양한 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
이라는 키로 delimiter (or separator, 구분문자)로 사용할 string을 입력받고 이들로 string을 나누고 그 결과를 list에 저장.
- separator argument가 주어지지 않을 경우, whitespace(공백문자) sequences (newline, space, tab)를 기본 delimiter로 삼아 처리함.
split는 나누는 것이니 합치는 것도 있음.
그것이 바로 join 메서드임.
[Etc] Token and Tokenizer
Token의 의미 문장을 구성하는 (최소)의미 단위. 일반적으로 하나의 word가 token에 해당하며, 영어에서는 whitespace character(공백문자) 및 punctuation mark 등을 구분자(delimeter)로 하여 나눈 결과들을 보통
ds31x.tistory.com
특정 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
: 오른쪽 정렬.
같이보면 좋은 자료들
[Python] String : 문자열
String(문자열)이란?다음 URL에서 4.3. String Type을 참고.https://dsaint31.tistory.com/515 [Python] (Data) Type : Summary1. Type 이란? Programming에서 사용되는 모든 value 혹은 object 들의 종류 를 (data) type이라고 부름.
ds31x.tistory.com
'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 |