앎을 경계하기

Programming/Python

Python 문자열 관련 함수

양갱맨 2019. 12. 25. 22:17
a = "hobby"
a.count('b')
2

 

a = "Python is best choice"
a.find('b') #있는 경우, 처음 나온 위치(인덱스) 반환
10

 

a.find('k') #없는 경우, -1 반환
-1

 

a = 'life is too short'
a.index('t') #있는 경우, 처음 나온 위치(인덱스) 반환
8

 

a.index('k') #없는 경우, 에러
---------------------------------------------------------------------------

ValueError                                Traceback (most recent call last)

<ipython-input-9-72baac18a8bc> in <module>
----> 1 a.index('k') #없는 경우, 에러


ValueError: substring not found

 

a = ','
a.join('abcd') #각 문자 사이에 ,tkqdlq
'a,b,c,d'

 

a = 'hi'
b = a.upper() # 대문자로 변환
print(b)
c = b.lower() # 소문자로 변환
print(c)
HI
hi

 

a = ' hi '
print(a.rstrip()) # 오른쪽 공백 삭제
print(a.lstrip()) # 왼쪽 공백 삭제
print(a.strip()) # 양쪽 공백 삭제
 hi
hi 
hi

 

a = "life is too short"
a.replace('life', 'your leg') # 문자열 대체
'your leg is too short'

 

a = 'life is too short'
a.split() # 문자열 공백기준으로 나누기
a = 'a:b:c:d'
a.split(':') # 기호 ':'를 기준으로 나누기
['a', 'b', 'c', 'd']

 

고급 문자열 포매팅

'I eat {0}apples'.format(3)
'I eat 3apples'

 

'I eat {0}apples'.format("five")
'I eat fiveapples'

 

number = 3
'I eat {0}apples'.format(number)
'I eat 3apples'

 

number = 10
day = "three"
"I ate {0} apples. so I was sick for {1} days".format(number, day)
'I ate 10 apples. so I was sick for three days'

 

"I ate {number} apples. so I was sick for {day} days.".format(number=10, day=3)
'I ate 10 apples. so I was sick for 3 days.'

 

"{0:<10}".format("hi") #왼쪽정렬
'hi        '

 

"{0:>10}".format("hi") #오른쪽정렬
'        hi'

 

"{0:^10}".format("hi") #가운데정렬
'    hi    '

 

"{0:=^10}".format("hi") #=로 채운 가운데 정렬
'====hi===='

 

"{0:0.4f}".format(3.42134234) #소수점 표현
'3.4213'

 

'{0:10.4f}'.format(3.42134234) #정수부 10자리로 맞추기
'    3.4213'

 

'{{ and }}'.format() # {}를 표현하고 싶을 때는 2개를 연속해서 사용하면 된다.
'{ and }'

 

참고 도서 : Do It! 점프 투 파이썬