본문 바로가기
  • Top Genius in the world
알고리듬

[알고리듬] #27 스트링 메소드

by Mr.Algo 2024. 3. 30.
728x90
반응형

파이썬 실습창을 열 수 있습니다.실습창 열기

 

메소드(method)는 오브젝트(object) 의 값(value)과 관련된 다양한 연산을 합니다.
이러한 method는 object의 type에 따라 사용할 수 있는 종류가 정해져 있으며,
dir(object)에 의하여 모든 method를 확인할 수 있습니다.
 method는 object●method(인수)의 형태로 사용합니다.

 

 

1.  스트링 메소드 1

다음의 '더보기'에 스트링(str)의 모든 메소드가 있습니다.

우리는 밑줄(underscore)없는 메소드들에 대하여 살펴봅니다.

더보기
a='abc'         # str data
print(dir(a))   # 모든 스트링 메소드 출력

'''
['__add__', '__contains__', '__eq__', '__format__', '__ge__', 
'__get__', '__getattribute__', '__getitem__', '__gt__', '__hash__', 
'__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__',
'__ne__', '__new__', '__repr__', '__rmul__', '__setattr__', '__str__',
'capitalize', 'center', 'count', 'endswith', 'expandtabs', 'find',
'format', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 
'isnumeric', 'isspace', 'istitle', 'isupper', 'join', 'ljust',
'lower', 'lstrip', 'partition', 'replace', 'rfind', 'rindex', 
'rjust', 'rpartition', 'rstrip', 'split', 'splitlines', 'startswith',
'strip', 'swapcase', 'title', 'upper', 'zfill']
'''

 

메소드(str method)는 오브젝트의 값(value)에 대하여 연산합니다.

오브젝트와 메소드 사이에는 점(dot)이 있습니다.

 

다음 표는 str method의 주요한 메소드를 정리한 것입니다.

 표의 '예' 부분을 꼭 실습하고 이해하십시오.  (코딩은 손가락)

모두 외우지 않아도 됩니다.  그러나 '이런 것이 있었지.' 정도는 알아야 됩니다.

일부의 메소드는 '파이썬 실습창'에서 실행되지않을 수 있습니다.

번호 문법
1 s.center(width [.pad])
s.ljust(width [,fill])
s.rjust(width [,fill])
s='str method test'
a=s.center(20,'-')
b=s.ljust (20,'-')
c=s.rjust(20,'-')
print(a)
print(b)
print(c) 
2 s.count(sub [,start [,end]]) s='str method test'
a=s.count('st')
print(a)
3 s.find(sub [,start [,end]])
s.rfind(sub [,start [,end]])
s='str method test'
a=s.find('met')
b=s.rfind('met')

print(a)
print(b)
4 s.index(sub [,start [,end]])
s.rindex(sub [,start [,end]])
s='str method test'
a=s.index('e')
b=s.rindex('e')
print(a)
print(b) 
5 s.replace(old, new[, count]) s='str method test'
a=s.replace('t','-',3)
print(a)

 

번호 출력 설명
1 --str method test---
str method test-----
----- str method test
20칸을 만들어 가운데 정렬, 남은 공간은 pad로 채운다.
왼쪽 정렬,
오른쪽 정렬을 한다.
2 2 sub문자(부분 문자)의 출현 회수 출력
3 4
4
왼쪽부터 찾은 sub 위치
오른쪽부터 찾은 sub 위치
못 찾으면 -1을 반환한다.
4 5
12
왼쪽부터 찾은 sub 위치 
오른쪽부터 찾은 sub 위치
못 찾으면 error가 발생한다.
5 s-r me-hod -est oldnew로 교체한다.
count 숫자만 큼 교체한다.
생략하면 1개 교체한다.

 

 

 

2.  스트링 메소드 2

번호 문법
6 s.isalnum()
s.isalpha()
s.isdigit()
s.islower()
s.isupper()
s.isspace()
s='str method test'
a=s.isalnum()
b=s.isalpha()
c=s.isdigit()
d=s.islower()
e=s.isupper()
f=s.isspace()
print(a,b,c,d,e,f)
7 s.join(t) t=['A','B']
s='str method test'
a=s.join(t)
print(a)
8 s.strip(char)
s.lstrip(char)
s.rstrip(char)
s='--str method test--'
a=s.strip('-')
print(a)
9 s.split([sep [,maxsplit]])
s.rsplit([sep [,maxsplit]])
s='str method test'
a=s.split(' ',1)   #따옴표 사이 공백있음  
print(a)
10 s.partition(sep)
s.rpartition(sep)
s='str method test'
a=s.partition('m')
print(a)

 

번호 출력 설명
6 False False False True False False 모든 문자가 영숫자인지 검사
(알파벳과 숫자)
모든 문자가 알파벳 검사
모든 문자가 숫자 검사
모든 문자가 소문자 검사
모든 문자가 대문자 검사
모든 문자가 공백 검사
7 Astr method testB s를 분리자(split)로 사용하여
t의 요소들을 이어 붙인다.
8 str method test

앞뒤 공백 또는 char 제거
왼쪽, 오른쪽 제거
9 ['str', 'method test'] sep을 기준으로 분할.
maxsplit는 최대 분할 회수
sep 생략하면 공백으로 인식
끝에서부터 분할
10 ('str ', 'm',
'ethod test')

최초의 sep을 기준으로 s를 분할 한다.
끝에서 부터 검사하여 분할

 

 

 

3.  스트링 메소드 3

번호 문법
11 s.splitlines([keepends]) s='''str method test
Python is easy.'''
a=s.splitlines()
print(a)
12 s.lower()
s.upper()
s.swapcase()
s='Str Method test'
a=s.swapcase()
print(a)
13 s.title()
s.capitalize()
s='str method test'
a=s.title()
print(a)
14 s.zfill(width) s='35'
a=s.zfill(7)
print(a)
번호 출력 설명
11 ['str method test', 'Python is easy.'] line 단위로 분할
keepends 부분에 1을 넣으면
줄바꿈(\n) 유지된다.
12 sTR mETHOD TEST 전체를 소문자로 바꾼다.
전체를 대문자로 바꾼다.
소문자와 대문자를 바꾼다.
13 Str Method Test 단어 첫 글자를 대문자로
첫 문자만 대문자로 바꿈
14 0000035 width만큼 0을 채움.
s는 숫자문자이어야 한다.

 

 

힘드셨지요?

메소드는 프로그램을 매우 쉽게 합니다.

대단히 편리합니다.

우리는 모든 형(type)에 대하여 메소드를 공부할 것입니다.

이 고비만 넘기면 파이썬을 이해하게 됩니다. 

무조건, 묻지도 따지지도 말고, 그냥 하세요.

힘을 냅시다.

화이팅!

 

오늘 끝.

 

 

 

 

 

728x90
반응형