📖 UNIT 24. 문자열 응용하기
📒문자열 조작하기
문자열은 시퀀스 자료형이라 리스트와 비슷한 점이 많다.(연속적이다.)
문자열은 이를 다룰 수 있는 다양한 메서드를 제공한다. 이런 메서드로 문자열을 조작해보자.
먼저 replace() 메서드는 문자열 안의 문자열을 다른 문자열로 바꾼다. (치환한다로 생각해도 되겠다.)
바뀐 결과로 원래 문자열을 바꾸지는 않지만, 바뀐 문자열을 반환해준다.
그래서 그 결과를 유지하고 싶으면 변수를 선언하여 사용해도 괜찮겠다.
s = "Hello, World!"
s = s.replace("Hello", "My")
이렇게 문자열이 바뀐것을 확인할 수 있다.
replace는 문자열 안의 문자열을 바꾼다면, translate 메서드는 문자를 바꾸어 준다.
이를 위해서는 먼저 변환 테이블이 필요하다.
str.maketrans('바꿀문자', '새문자') 와 같은 형태로 테이블을 만들어주고, 문자를 바꿔보자.
table = str.maketrans('abcde', '12345')
'apple'.translate(table)
위와 같은 방법으로 진행해주면 된다.
성공이다 !!
문자열을 분리해서 리스트로 만들 수도 있다. 바로 split() 메서드를 사용하는 것이다.
'apple pear grape pineapple orange'.split()
위의 코드를 보자.
split() 안에 아무것도 없으므로 default 값인 공백을 기준으로 자료를 분리한다. 괄호 안에 특정 키워드가 들어간다면, 그것을 기준으로 문자열이 분리된다.
문자열을 분리했다면, 문자열을 다시 연결시키는 방법 또한 존재할 것이다.
' '.join(['apple', 'pear', 'grape', 'pineapple', 'orange'])
위와 같은 방법을 사용한다면, 리스트 내의 각 단어들이 띄어쓰기를 기준으로 한 문자열로 뭉치게 된다.
저 ' ' 사이에 특정 문자가 들어가게 된다면, 그 문자가 각 단어들을 이어주는 연결고리가 되는 셈이다.
- upper() : 소문자 -> 대문자
- lower() : 대문자 -> 소문자
- lstrip() : 왼쪽의 연속된 공백 제거
- rstrip() : 오른쪽의 연속된 공백 제거
- strip() : 양쪽의 모든 연속된 공백 제거
- 메서드 체이닝 : 메서드를 연결시켜서 사용 가능
- find('xx') : 문자열 내에서 xx의 위치 찾기
- rfind() : 오른쪽 부터 위치 찾기
📒문자열 포맷팅
- '%.자릿수f' % 숫자 : 숫자의 소숫점 아래 자릿수 지정
- '%숫자s' % 문자열 : 문자열을 포함하여 숫자만큼의 자릿수를 채움 (자릿수가 남는다면 왼쪽을 공백으로.)
- => 문자열 오른쪽 정렬을 원한다면 '%-숫자s' % 문자열
'스터디 그룹 > ProjectH4C' 카테고리의 다른 글
ProjectH4C 1개월 2주차 과제 (UNIT 27, 28) (0) | 2021.01.29 |
---|---|
ProjectH4C 1개월 2주차 과제 (UNIT 25, 26) (0) | 2021.01.28 |
ProjectH4C 1개월 2주차 과제 (UNIT 23) (0) | 2021.01.27 |
ProjectH4C 1개월 2주차 과제 (UNIT 22) : 밑은 꽤 중요함 (0) | 2021.01.27 |
ProjectH4C 1개월 2주차 과제 (UNIT 19, 20, 21) (0) | 2021.01.25 |