문자열 포매팅이란?
문자열 내의 특정한 값을 바꿔야 할 경우가 있을 때
이것을 가능하게 해주는 것이 바로 문자열 포매팅이다.
문자열 포매팅 따라 하기
1. 숫자 대입
>>>"I eat %d apples." % 3
'I eat 3 apples.'
★%d 는 문자열 포맷코드
2.문자열 대입
>>>"I eat %s apples." % "five"
★문자열은 %s 를 쓰자
3. 숫자 값을 나타내는 변수 대입
>>>number = 3
>>>"I eat %d apples." %number
'I eat 3 apples.'
4. 2개이상의 값 넣기
>>>number = 10
>>>day = "three"
>>>"I ate %d apples. so I was sick for %s days." %(number,day)
'I ate 10 apples. so I was sick for three days.'
※ 포매팅 연산자 %d와 %를 같이 쓸 경우 %%를 쓴다
>>>"Error is %d%%." % 98
'Error is 98%.'
포맷 코드와 숫자 함께 사용하기
1. 정렬과 공백
>>>"%10s" % "hi"
' hi'
->전체 길이가 10개인 문자열 공간에서 hi를 오른쪽으로 정렬하고 그 앞의 나머지는 공백으로 남겨두라는 의미(공백은 8개)
>>>"%-10sjane." % 'hi'
'hi jane.'
-> 왼쪽정렬은"%-10s"
2. 소수점 표현하기
아래 소수를 소수점 네 번째 자리까지만 나타내고 싶은경우
>>> "%0.4f" % 3.42134234
'3.4214'
+정렬 까지 하고 싶은경우
>>> "%10.4f" % 3.42134234
' 3.4213'
★나타내기로 한 n번째 숫자자리의 수는 n+1번째 자리숫자의 반올림을 한것임.
문자열 관련 함수들
복소수에 관련된 내장 함수가 있는것 처럼 문자열 자료형도 자체적으로 가지고 있는 함수가 있다.
1. 문자 개수 세기(count)
>>> a = "hobby"
>>> a.count('b')
2
2. 위치 알려주기1(find)
>>> a = "Python is best choice"
>>> a.find('b')
10 ←문자열에서 b가 처음 나온위치
>>>a.find('k')
-1 ←찾는 문자나 문자열이 존재하지 않으면 -1을 반환
★a.find('i' , 10) 하면 10번째 이후 처음나오는 i를 찾아라 이런식
★a.rfind('i') 하면 뒤에서부터 셈
둘다 위치는 앞에서부터 셈 인덱스도 활용가능
3. 위치 알려주기2(index)
>>>a = "Life is too short"
>>>a.index('t')
8
find 와 다르게 문자열이 없으면 오류발생
4. 문자열 삽입(join)
>>>a=","
>>>a.join('abcd')
'a,b,c,d'
abcd 라는 문자열의 각각의 문자 사이에 변수 a의 값인 ',' 를 삽입
5. 소문자를 대문자로 바꾸기(upper)
>>> a= "hi"
>>> a.upper()
'HI'
6. 대문자를 소문자로 바꾸기(lower)
>>>a="HI"
>>>a.lower()
'hi'
7. 왼쪽 공백 지우기(lstrip)
>>>a = " hi "
>>>a.lstrip()
'hi '
8. 오른쪽 공백 지우기(rstrip)
>>>a = " hi "
>>>a.rstrip()
' hi'
9. 양쪽 공백 지우기(strip)
>>>a = " hi "
>>>a.strip()
'hi'
공백 지우기는 한칸이상의 연속된 공백 싹다 지움.
10. 문자열 바꾸기(replace)
>>> a= "Life is too short"
>>> a.replace("Life", "Your leg")
'Your leg is too short"
replace(바뀌게 될 문자열, 바꿀 문자열)
11. 문자열 나누기(split)
>>> a= "Life is too short"
>>> a.split() ← 공백을 기준으로 문자열 나눔
['Life', 'is', 'too', 'short']
>>> a="a:b:c:d"
>>> a.split(':') ← : 기호를 기준으로 문자열 나눔
['a', 'b', 'c', 'd']
a.swapcase() → 대소문자반전
a.capitalize() → 문장의 제일 첫번째 글자 대문자로
a.title() → 단어의 제일 첫번째 글자 대문자로
'파이썬 복습' 카테고리의 다른 글
3/16 리스트 자료형 (0) | 2018.03.16 |
---|---|
3/15 고급 문자열 포매팅 (0) | 2018.03.15 |
3/15 문자열 인덱싱과 슬라이싱 (0) | 2018.03.15 |
3/14 문자열 자료형 (0) | 2018.03.14 |
3/14 자료형-숫자형 (0) | 2018.03.14 |