파이썬 문자열 조작, 서식 지정자, 포매팅
문자열 바꾸기
replace('바꿀문자열', '새문자열')
>>> s = 'Hello, world!'
>>> s = s.replace('world!', 'Python')
>>> s # 할당해야지만 바뀐 결과가 유지된다.
'Hello, Python'
문자 바꾸기
str.maketrans('바꿀문자', '새문자')와 translate(테이블)
>>> table = str.maketrans('aeiou', '12345') #a를 1 e를 2 ... 로 바꿈
>>> 'apple'.translate(table)
'1ppl2'
문자열 분리하기
split('기준문자열')
구분자 문자열과 문자열 리스트 연결하기
join(리스트)
>>> '-'.join(['apple', 'pear', 'grape', 'pineapple', 'orange'])
# '' 안에 문자열 사이에 들어올 문자 지정 가능
'apple-pear-grape-pineapple-orange'
소문자를 대문자로
upper()
대문자를 소문자로
lower()
양쪽 공백 삭제하기
strip()
왼쪽 공백 삭제 : lstrip() 오른쪽 공백 삭제 : rstrip()
양쪽 특정문자 삭제하기
strip('특정문자')
왼쪽, 오른쪽 특정문자 삭제는 방법 동일
문자열 왼쪽 정렬하기
ljust(길이)
>>> 'python'.ljust(10)
'python ' # 빈 칸만큼 공백으로 채워진다.
오른쪽 정렬하기 : rjust(길이)
가운데 정렬하기
center(길이)
문자열 왼쪽에 0채우기
zfill(길이) - zero fill을 의미
문자열 위치 찾기
find('찾을문자열') 왼쪽에서부터 찾는다.
오른쪽부터 찾기는 rfind('찾을문자열')
>>> 'apple pineapple'.find('pl')
2
>>> 'apple pineapple'.find('xy')
-1
#없는 문자일 경우 -1 반환
index('찾을문자열')도 왼쪽에서부터 찾아 인덱스를 반환한다. rindex('찾을문자열)은 오른쪽부터 찾는다.
문자열 개수 세기
count('문자열')
서식 지정자(format specifier)로 문자열 넣기
'%s' % '문자열
>>> 'I am %s.' % 'james'
'I am james.
#변수 지정 가능
>>> name = 'maria'
>>> 'I am %s.' % name
'I am maria.'
서식 지정자로 숫자 넣기
'%d' % 숫자
%d는 10진 정수 decimal integer의 d이다.
>>> 'I am %d years old.' % 20
'I am 20 years old.'
서식 지정자로 소수점 표현하기
'%f' % 숫자, (소수점 이하 자리 수 지정 : '%.자릿수f' % 숫자)
%f는 기본적으로 소수점 이하 6자리까지 표시하므로 2.3은 2.300000으로 표시된다.
>>> '%f' % 2.3
'2.300000'
>>> '%.2f' % 2.3
'2.30'
>>> '%.3f' % 2.3
'2.300'
서식 지정자로 문자열 정렬하기
%길이s (오른쪽으로 정렬한다.) 왼쪽 정렬 : %-길이s
>>> '%10s' % 'python'
' python'
자릿수가 다른 숫자 출력하기
# %길이d >> '%10d' % 150 ' 150' >> '%10d' % 15000 ' 15000'
# %길이.자릿수f >> '%10.2f' % 2.3 ' 2.30' >> '%10.2f' % 2000.3 ' 2000.30'
서식 지정자로 문자열 안에 값 여러 개 넣기
'%d %s' % (숫자, '문자열')
>>> 'Today is %d %s.' % (3, 'April')
'Today is 3 April.'
format 메서드 사용하기
{}안에 인덱스를 지정해 순서, 중복 출력 등을 정할 수 있다.
>>> 'Hello, {} {} {}'.format('Python', 'Script', 3.6)
'Hello, Python Script 3.6'
인덱스 대신 이름을 지정할 수도 있다.
>>> 'Hello, {language} {version}'.format(language='Python', version=3.6)
'Hello, Python 3.6'
문자열 포매팅에 변수를 그대로 사용할 수 있다. 문자열 앞에 f를 붙인다.
>> language = 'Python'
>>> version = 3.6
>>> f'Hello, {language} {version}'
'Hello, Python 3.6'
format메서드로 문자열을 정렬하기
'{인덱스:<길이}'.format(값)
< 왼쪽 정렬, > 오른쪽 정렬
>>> '{0:<10}'.format('python') # 인덱스0 생략 가능
'python '
숫자 개수 맞추기
'%0개수d' % 숫자, '{인덱스:0개수d'}'.format(숫자)
>>> '%03d' % 1
'001'
>>> '{0:03d}'.format(35)
'035'
실수도 맞출 수 있다. 소수점 이하 자릿수를 지정하고 싶으면 .뒤에 지정한다.
>>> '%08.2f' % 3.6
'00003.60'
>>> '{0:08.2f}'.format(150.37)
'00150.37'
채우기와 정렬을 조합해서 사용하기
>>> '{0: >10}'.format(15) # 남는 공간을 공백으로 채움
' 15'
>>> '{0:>10}'.format(15) # 채우기 부분을 생략하면 공백이 들어감
' 15'
>>> '{0:x>10}'.format(15) # 남는 공간을 문자 x로 채움
'xxxxxxxx15'
Author And Source
이 문제에 관하여(파이썬 문자열 조작, 서식 지정자, 포매팅), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@yeonu/파이썬-문자열-조작-서식-지정자-포매팅저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)