상세 컨텐츠

본문 제목

10. 파이썬 문자열 다루기

프로그래밍 언어/Python(파이썬)

by 알파고제로 2023. 9. 20. 15:06

본문

1. 문자열

■ 문자열의 특징

  • 파이썬 3은 Unicode 지원한다.
  • 문자열은 immutable한 데이터이다.
  • '문자열', "문자열", '''문자열''', """문자열"""
  • Single quotation(''') , double quotation(""")을 3개씩 문장의 앞 뒤로 감싸면 여러 줄로 구성된 문자열을 만들 수 있다. 

■ Multiline 처리

mystr = """Hello, it's me
I was wondering if after all these years you'd like to meet
To go over everything
They say that time's supposed to heal ya
But I ain't done much healing"""

문자열 관련 연산자 : + *

  • 문자열 연결 : + (문자열과 숫자 연결 불가)
  • 문자열 반복 : *

 Escape Sequence

  • 문자 앞에 \를  붙여 언어에서 정의되어 있는 원래의 의미를 벗어나는 문자들을 말한다.
이스케이프 시퀀스 의미
\\ 슬래시 (\)
\' 작은따옴표 (')
\" 큰따옴표 (")
\a ASCII 벨 (BEL)
\b ASCII 백스페이스 (BS)
\f ASCII 폼 피드 (FF)
\n ASCII 라인 피드 (LF)
\r ASCII 캐리지 리턴 (CR)
\t ASCII 가로 탭 (TAB)

문자열 분리

  • 문자열을 구성하는 개별 문자를 읽을 때는 [] 괄호와 문자의 위치인 첨자를 적는다.
  • 문자열의 길이는 len() 함수를 통해 얻는다.

 문자열  추출(슬라이싱)

  • 파이썬 문자열은 자바의 배열처럼 동작
  • 음수 사용 가능
표현 의미
[:] 처음부터 끝까지
[start:] start offset부터 끝까지
[:end] 처음부터 end-1까지
[start:end] start offset부터 end-1까지
[start:end:step] step만큼 문자를 건너뛰면서, start 오프셋부터 (end-1) 오프셋까지 시퀀스를 추출

 문자열  관련 함수

함수명 설명
capitalize() 번째 단어를 대문자로
lower() 모든 글자를 소문자로
title() 모든 단어의글자를 대문자로 변환
upper() 모든 글자를 대문자로
swapcase() 대문자는 소문자로, 소문자는 대문자로 바꿈
count(문자열) 해당 문자열이 몇 개 있는지 출력
len(문자열) 문자열의 길이를 센다
endswidth(문자열) 지정된 문자열로 끝나는지 여부 출력(True, False)
startswith(문자열) 지정된 문자열로 시작하는지 여부 출력(True, False)
find(문자열) 지정된 문자열의 오프셋리턴
format() 출력포맷을 지정할있다.
함수명 설명
구분문자.join(list) 문자열 리스트를 하나의 문자열로 결합
replace(원본문자열, 바꿀문자열 [, 바꿀횟수]) 문자열을 지정한 문자열로 바꿈
rfind(문자열) 지정 문자열을 오른쪽에서 찾아서 출력
center(숫자) 문자열을 지정한 공간에서 중앙에 배치
ljust(숫자) 문자열을 지정한 공간에서 왼쪽에 배치
rjust(숫자) 문자열을 지정한 공간에서 오른쪽에 배치
split(구분자) 구분자를 기준으로 하나의 문자열을 리스트로 나눔
구분자 없이 사용하면 기본 구분자 (공백, 줄나눔, 탭)를 사용
str(데이터) 괄호 안의 모든 데이터를 문자열로 바꾼다.
strip(문자열) 문자열의앞과뒤에 지정 문자열을 삭제
rstrip(문자열) 문자열의뒤에 White Space 삭제할주로 사용
lstrip(문자열) 문자열의앞에 White Space 삭제할주로 사용

 

2. 문자열  대입

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

 문자열 자리배치

  • 별도의 폭 지정이 없으면 변수의 자리수만큼 차지하지만 폭을 지정하면 최소 지정된 만큼 폭을 확보한다.
pie = 3.14159265
print(“%10f” % pie)
print(“%10.8f” % pie)
print(“%10.5f” % pie)
print(“%10.2f” % pie)

  • 실수는 폭 지정 외에 . 기호와 함께 실수 부분의 유효 자리수를 지정할 수 있다.
  • 유효자리수 지정이 없으면 소수점 이하 6자리까지 반올림하여 표시한다.

 포맷팅

  • 문자열 내에 {} 괄호를 입력하고 format 함수의 인수로 삽입할 변수 또는 값을 입력하면 {} 괄호 자리에 차례대로 인수 값이 전달된다.
name = ‘한결’
age = 16
height = 162.5
print(‘이름:{}, 나이:{}, 키:{}’.format(name, age, height))

  • {} 괄호 안에 0부터 시작하는 순서 값을 지정할 수도 있다.
‘이름:{2}, 나이:{0}, 키:{1}’.format(age, height, name)
s = "I eat %d apples" % 3
print(s)

s = "I eat %s apples" % "five"
print(s)

number = 4
s = "I eat %d apples" % number
print(s)

number = 7
day = "3"
s = "사과를 %d개나 먹었다가 %s일 동안 아팠어" % (number, day)
print(s)

# 숫자를 %s로 받으면 자동으로 문자열로 변환된다.
s = "오늘부터 %s일 안에 파이썬 기본기를 끝낸다" % number
print(s) 

str = "%10s" % "hi"
print(str)
 
str = "%-10sJane" % "hi"
print(str)
 
number = "%.4f" % 3.141592
print(number)
 
number = "%10.4f" % 3.141592
print(number)

'프로그래밍 언어 > Python(파이썬)' 카테고리의 다른 글

11. 파이썬 컬렉션 - List  (0) 2023.10.13
09. 파이썬 제어문과 반복문  (0) 2023.09.20
08. 파이썬 표준 입출력  (0) 2023.09.20

관련글 더보기

댓글 영역