replace('바꿀 문자열, '새 문자열')
문자열 안의 문자열을 다른 문자열로 바꿈.
str.maketrans('바꿀 문자' , '새 문자')
translate(테이블)
>>> table = str.maketrans('aeiou' , '12345')
>>> 'apple'.translate(table)
'1ppl2'
split('기준 문자열') : 문자열에서 각 단어가 콤마와 공백으로 되어 있을 때, ','로 문자열을 분리하면 단어만 리스트로 만듦.
>>> 'apple, pear, grape, pineapple, orange'.split(', ')
['apple', 'pear', 'grape', 'pineapple', 'orange']
join(리스트) : 구분자 문자열과 문자열 리스트의 요소를 연결하여 문자열로 만듦.
' '.join([...])
' 리스트 요소s'
* upper & lower : 대문자를 소문자로 바꾸기, 혹은 그 반대.
* strip()
1. lstrip() : 왼쪽 공백 삭제
2. rstrip() : 오른쪽 공백 삭제
3. strip() : 양쪽 공백 삭제
+) 왼쪽/오른쪽/양쪽의 특정 문자 삭제
.lstrip('삭제하고싶은문자') / .rstrip('삭제하고싶은문자') /strip('삭제하고싶은문자')
* 구두점 간단하게 삭제
stirng 모듈의 puctuation에는 모든 구두점이 들어있음
>>> import string
>>> ',python.'.strip(string.punctuation)
'python'
*공백까지 삭제하고 싶은 경우 끝에 공백만 추가해주면 됨
>>> ',python.'.strip(string.punctuation + ' ')
'python'
* 문자열 오른쪽/왼쪽/가운데 정렬 후 남은 공간은 공백으로 채우기
rjust(길이) / ljust(길이) / center(길이)
메서드 체이닝
문자열 메서드는 처리한 결과를 반환.
-> 메서드 게속 연결해서 호출하는 메서드 체이닝 쌉가능
뭐...쉽게 말해서 여러개 한번에 사용 가능하단겨
예시 ) 문자열 왼쪽 정렬하고 다 소문자로 만들기
'문자열'.ljust(길이).lower()
문자열 위치 찾기
find 메소드 사용
특정 문자열 찾아서 해당 문자 인덱스 반환.
문자열 없으면 -1 반환.
*rfind : 오른쪽부터 찾기
**find와 index의 차이점 : find는 해당 문자가 없으면 -1을 반환하지만 index는 에러를 일으킴.
그래서 아마도...find가 더 편할듯
+ 추가로 count 와 index가 있음
-서식지정자는 질리도록 했으니 정리 패쓰
format 메서드
'{인덱스]'.format(값)
* 문자열 포매팅에 변수를 그대로 사용하는 방법
language = 'python'
version = 3.6
f 'Hello, {language } {version} '
* 처음에 나는 count 썼는데 8 나옴... 잘못된 방법.
strr = input().split()
count = 0
for words in strr:
if words.strip(',.') == 'the':
count+=1
print(count)
먼저 문자열이 입력되므로 input을 사용하여 문자열을 변수에 저장해줍니다(변수는 이하 paragraph).
paragraph에서 paragraph.count('the')처럼 count 메서드로 'the'의 개수를 구하면 'whether', 'themselves'의 개수까지 구하게 되므로 잘못된 결과가 나옵니다. 따라서 'the'의 개수만 구하려면 먼저 paragraph에 split을 사용하여 공백을 기준으로 분리한 뒤 리스트로 만들어줍니다(리스트는 이하 words).
그다음에 for 반복문으로 리스트 words를 반복하면서 문자열이 'the'인지 판단합니다. 이때 단순히 == 연산자로 요소 i가 'the'와 같은지만 판단하면 'the,' 또는 'the.'처럼 ,(콤마)나 .(점)이 붙어있는 문자열은 'the'와 다르다고 나옵니다. 따라서 strip에 ',.'을 지정해서 콤마와 점을 삭제한 뒤 'the'와 비교해야 합니다. 비교한 결과가 참이면 변수 count에 1을 더해주면 됩니다.
마지막으로 print를 사용하여 count의 값을 출력해줍니다.
'Language > Python' 카테고리의 다른 글
Set (0) | 2021.07.24 |
---|---|
dictionary (0) | 2021.07.24 |
2D array + a (0) | 2021.07.18 |
List (0) | 2021.07.09 |
sequence type, baekjoon quest. (0) | 2021.07.04 |