문자열 관련 노트 on redgoose note

문자열 관련 노트

Nest: Development Category: Python 2013-03-16

문자열 이스케이프 코드 목록

코드 설명
\n 개행 (줄바꿈)
\v 수직 탭
\t 수평 탭
\r 캐리지 리턴
\f 폼 피드
\a 벨 소리
\b 백 스페이스
\000 널문자
\ 문자 "\"
\' 단일 인용부호(')
\" 이중 인용부호(")

이중에서 활용빈도가 높은 것은 \n, \t, \\, \', \"이다.

문자열 포맷 코드

코드 설명
%s 문자열 (String)
%c 문자 한개(character)
%d 정수 (Integer)
%f 부동소수 (floating-point)
%o 8진수
%x 16진수
%% Literal % (문자 '%s' 자체)

문자열 포매팅 사용예제

숫자 바로 대입

>>> print "I eat %d apples." % 3
I eat 3 apples.

문자열 바로 대입

>>> print "I eat %s apples." % "five"
I eat five apples.

숫자 변수로 대입

>>> number = 3
>>> print "I eat %d apples." % number
I eat 3 apples.

두 개 이상의 값을 치환

>>> number = 10
>>> day = "three"
>>> print "I eat %d apples. so I was sick for %s days." % (number, day)
I eat 10 apples. so I was sick for three days.

%출력할때 %를 두개를 사용해야한다.

>>> print "Error is %d%%." % 98
Error is 98%.

소숫점 표현

>>> print "%0.4f" % 3.42134234
3.4213

소숫점 표현에서 왼쪽으로 10칸 공백 붙인다.

>>> print "%10.4f" % 3.42134234
3.4213

문자열 수정 도구들

양쪽 공백 지우기 (strip)

>>> a = " hi "
>>> a.strip()
'hi'

문자열 치환하기

>>> a = "Life is too short"
>>> a.replace("Life", "Your leg")
'Your leg is too short'

문자열 나누기 (split)

>>> a = "Life is too short"
>>> a.split()
['Life', 'is', 'too', 'short']
>>> a = "a:b:c:d"
>>> a.split(':')
['a', 'b', 'c', 'd']

문자열 관련함수

코드 설명
a.upper() 문자열 a를 모두 대문자로 바꾸어 준다.
a.count(x) 문자열 a중 x와 일치하는 것의 갯수를 반환한다.
a.find(x) 문자열 a중 문자 x가 처음으로 나온 위치를 반환한다. 없으면 -1을 반환한다.
a.index(x) 문자열 a중 문자 x가 처음으로 나온 위치를 반환한다. 없으면 에러를 발생시킨다.
a.join(s) s라는 문자열의 각각의 요소 문자사이에 문자열 a를 삽입한다.
a.lower() 문자열 a를 모두 소문자로 바꾸어 준다.
a.lstrip() 문자열 a의 왼쪽 공백을 모두 지운다.
a.rstrip() 문자열 a의 오른쪽 공백을 모두 지운다.
a.strip() 문자열 a의 양쪽 공백을 모두 지운다.
a.replace(s, r) 문자열 a의 s라는 문자열을 r이라는 문자열로 치환한다.
a.split([s]) 문자열 a를 공백으로 나누어 리스트값을 돌려준다.
a.swapcase() 문자열 a의 대문자는 소문자로, 소문자는 대문자로 각각 바꾸어 준다.