1. 문자열 메서드
메서드 |
설명 |
replace('바꿀문자열', '새문자열') |
문자열 안의 문자열을 다른 문자열로 바꿈 |
translate(테이블) |
문자열 안의 문자를 다른 문자로 바꿈, str.maketrans('바꿀문자', '새문자')로 변환 테이블을 만들어야 함 |
split() split('기준문자열') |
공백을 기준으로 문자열을 분리하여 리스트로 만듦 기준 문자열을 지정하면 기준 문자열로 문자열을 분리 |
join(리스트) |
구분자 문자열과 문자열 리스트(튜플)의 요소를 연결하여 문자열로 만듦 |
upper() lower() |
upper는 문자열의 문자를 대문자로 바꾸고, lower는 소문자로 바꿈 |
lstrip(), rstrip(), strip() lstrip('삭제할문자들') rstrip('삭제할문자들') strip('삭제할문자들') |
lstrip은 문자열에서 왼쪽 공백을 삭제, rstrip은 오른쪽 공백을 삭제, strip은 양쪽 공백을 삭제, 삭제할 문자들을 지정하면 해당 문자들을 삭제 |
ljust(길이), rjust(길이), center(길이) |
문자열을 지정된 길이로 만든 뒤 왼쪽(ljust), 오른쪽(rjust), 가운데(center)로 정렬하며 남는 공간은 공백으로 채움 |
zfill() |
지정된 길이에 맞춰서 문자열의 왼쪽에 0을 채움 |
find('찾을문자열') rfind('찾을문자열') |
find는 왼쪽에서부터, rfind는 오른쪽에서부터 특정 문자열을 찾아서 인덱스 반환, 문자열이 없으면 -1을 반환 |
index('찾을문자열') rindex('찾을문자열') |
index는 왼쪽에서부터, rindex는 오른쪽에서부터 특정 문자열을 찾아서 인덱스를 반환, 문자열이 없으면 에러 발생 |
count('문자열') |
현재 문자열에서 특정 문자열이 몇 번 나오는지 알아냄 |
2. 문자열 서식 지정자
문자열은 서식 지정자를 조합하여 문자열을 만들 수 있습니다. 서식 지정자는 %로 시작하며 자료형을 뜻하는 문자가 붙습니다. 서식 지정자를 사용한 뒤 % 다음에 문자열을 지정해주면 이 문자열이 서식 지정자에 들어갑니다. 서식 지정자가 여러 개 일 때는 값 여러 개를 튜플로 만들어서 지정해줍니다.
- %s: 문자열
- %d: 정수
- %f: 실수
'%서식지정자' % 값 # 서식 지정자 한 개 사용
'I am %s.' % 'maria' # 'I am maria.'
'%서식지정자1, %서식지정자2' % (값1, 값2) # 서식 지정자 여러 개 사용
'Today is %d %s.' % (3, 'April') # 'Today is 3 April.'
- 소수점 이하 자릿수를 지정하고 싶다면 f 앞에 .(점)과 자릿수를 지정합니다.
'%.자릿수f' % 숫자 # 소수점 이하 자릿수 지정하기
'%.3f' % 2.3 # '2.300'
- %뒤에 숫자를 붙이면 문자열을 지정된 길이로 만든 뒤 오른쪽으로 정렬하고 남는 공간을 공백으로 채웁니다. 길이를 음수로 지정하면 왼쪽으로 정렬합니다.
%길이s # 문자열을 지정된 길이로 만든 뒤 오른쪽으로 정렬하고 남는 공간을 공백으로 채움
'%10s' % 'python' # ' python'
%-길이s # 문자열을 지정된 길이로 만든 뒤 왼쪽으로 정렬하고 남는 공간을 공백으로 채움
'%-10s' % 'python' # 'python '
- %와 d사이에 0과 숫자 개수를 넣으면 자릿수에 맞춰서 앞에 0이 들어갑니다.
'%0개수d' % 숫자 # 자릿수에 맞춰서 0이 들어감
'%03d' % 1 # '001'
'%0개수.자릿수f' % 숫자 # 실수의 소수점 이하 자릿수 지정
'%08.2f' % 3.6 # '00003.60'
3. 문자열 포매팅
문자열 포매팅을 사용할 때는 { }(중괄호) 안에 인덱스를 지정하고, format에는 { } 부분에 들어갈 값을 지정해줍니다.
'{0}'.format(값) # 값을 한 개 넣음
'{0} {1}'.format(값1, 값2) # 값을 두 개 넣음
'{0} {0} {1} {1}'.format(값1, 값2) # 같은 인덱스에는 같은 값이 들어감
'{} {} {}'.format(값1, 값2, 값3) # 인덱스를 생략하면 format에 지정한 순서대로 값이 들어감
'{name1} {name2}'.format(name1=값1, name2=값2) # { }에 이름을 지정
- 파이썬 3.6부터는 변수에 값을 넣고 { } 안에 변수 이름을 지정하면 됩니다. 이때는 문자열 앞에 f를 붙입니다.
변수1, 변수2 = 값1, 값2 f'{변수1} {변수2}'
- 문자열 포매팅에서 <은 문자열을 지정된 길이로 만든 뒤 왼쪽으로 정렬하고 남는 공간을 공백으로 채웁니다. >은 오른쪽으로 정렬합니다.
'{인덱스:<길이}'.format(값) # 문자열을 지정된 길이로 만든 뒤 왼쪽 정렬, 남는 공간을 공백으로 채움
'{인덱스:>길이}'.format(값) # 문자열을 지정된 길이로 만든 뒤 오른쪽 정렬, 남는 공간을 공백으로 채움
- 문자열 포매팅에서 인덱스나 이름 뒤에 :(콜론)을 붙이고 0과 숫자 개수를 지정하면 자릿수에 맞춰서 0이 들어갑니다.
'{인덱스:0개수d'}'.format(숫자) # 자릿수에 맞춰서 0이 들어감
'{인덱스:0개수.자릿수f'}.format(숫자) # 실수의 소수점 이하 자릿수 지정
- 문자열 포매팅은 채우기, 정렬, 길이, 자릿수, 자료형을 조합하여 사용할 수 있습니다.
'{인덱스:[[채우기]정렬][길이][.자릿수][자료형]}'
'{0:0<10}'.format(15) # '1500000000': 길이 10, 왼쪽으로 정렬하고 남는 공간은 0으로 채움 '{0:0>10.2f}'.format(15) # '0000015.00': 길이 10, 오른쪽으로 정렬하고 소수점 이하 자릿수는 2자리
'{0: >10}'.format(15) # ' 15': 남는 공간을 공백으로 채움
'{0:>10}'.format(15) # ' 15': 채우기 부분을 생략하면 공백이 들어감
'{0:x>10}'.format(15) # 'xxxxxxxx15': 남는 공간을 문자 x로 채움
4. 서식 지정자 자료형
자료형 |
설명 |
s |
문자열 |
b |
2진수 |
c |
문자 |
d |
10진 정수 |
o |
8진 정수, 예) '%o' % 8은 '10' |
x |
16진 정수, 0~9, a~f, 예) '%x' % 254는 'fe' |
X |
16진 정수, 0~9, A~F, 예) '%X' % 254는 'FE' |
e |
실수 지수 표기법, 예) '%e' % 2.3은 '2.300000e+00' |
E |
실수 지수 표기법, 예) '%E' % 2.3은 '2.300000E+00' |
f |
실수 소수점 표기 |
F |
실수 소수점 표기, f와 같음, nan은 NAN, inf는 INF로 표시(nan은 숫자가 아니라는 뜻, inf는 무한대) |
g |
실수 일반 형식, 예) '%g' % 2.3e-10은 '2.3e-10' |
G |
실수 일반 형식, 예) '%G' % 2.3e-10은 '2.3E-10' |
% |
% 문자 표시 |
'Programming > Python' 카테고리의 다른 글
[코딩도장-파이썬] 핵심정리 (0) | 2020.11.26 |
---|---|
[코딩도장-파이썬] 문자열 응용하기 2 (formatting, 포매팅) (0) | 2020.11.24 |
[코딩도장-파이썬] 문자열 응용하기 1 (0) | 2020.11.23 |
[코딩도장-파이썬] 2차원 리스트 사용하기 2 (출력과 입력) (0) | 2020.11.20 |
[코딩도장-파이썬] 2차원 리스트 사용하기 1 (0) | 2020.11.20 |