본문 바로가기
프로그래밍 언어/Python

Python(파이썬) 3. 문자열 자료형

by kkmin93 2021. 9. 20.
반응형

 

 

" 다수의 사람들은 장애물을 보지만 소수의 사람들은 목표를 본다.

역사는 후자의 성공을 기록한다. 전자에겐 잊혀짐이란 결과만이 있을 뿐이다. "

 

- 아르망 몽따페르 -

 

Python(파이썬) 3. 문자열 자료형

목 차
1. Python 문자열
2. 이스케이프 코드
3. Python 문자열 연산
4. Python 문자열 인덱싱과 슬라이싱
5. 문자열 관련 함수들

 

1. Python 문자열

 1) 문자열 생성

  • 문자열(String)이란 문자, 단어 등으로 구성된 문자들의 집합을 의미한다.
  • 큰따옴표(" ")로 둘러싸여 있는 문자, 단어들이 문자열이라고 하며, 큰따옴표(" ") 내 있으면 숫자도 문자열이 된다.

[ 그림 1.1 문자열 ]

 

  ① 큰따옴표(" ")로 선언하기

  • "Hello Python!"

 

  ② 작은 따옴표(' ')로 선언하기

  • 'Hello Python!'

 

  ③ 큰따옴표 3개 연속(""" """)으로 선언하기

  • """Hello Python!"""

 

  ④ 작은따옴표 3개 연속(''' ''')으로 선언하기

  • '''Hello Python!'''

 

 2) 문자열 생성 방법이 4가지나 있는 이유

 

  ① 문자열 안에 작은, 큰따옴표가 들어가야 하는 경우

  • 문자열 내 작은 따옴표가 들어가야 하는 경우 문자열을 나타내는 기호로 큰 따옴표(" ")를 사용하여 생성한다.

 

  ② 여러 줄인 문자열을 변수에 대입하고 싶은 경우

  • 줄 바꿈 문자 '\n'을 삽입하는 방법도 있지만, 연속된 3개의 작은, 큰 따옴표를 사용하면 더 간편하다.

[ 그림 1.2 연속된 3개의 작은, 큰 따옴표로 여러 문자열 선언 ]

 

 

2. 이스케이프 코드

  • 프로그래밍할 때 사용할 수 있도록 미리 정의해 둔 "문자 조합"
코드 설명
\n 문자열 안에서 줄을 바꿀 때 사용
\t 문자열 사이에 탭 간격을 줄 때 사용
\\ 문자 \를 그대로 표현할 때 사용
\' 작은 따옴표(')를 그대로 표현할 때 사용
\" 큰 따옴표(")를 그대로 표현할 때 사용
\r 캐리지 리턴(현재 커서를 가장 앞으로 이동)
\a 벨 소리 출력할 때 사용
\b 백 스페이스
\000 NULL 문자

 

 

3. Python 문자열 연산

 1) 연결하기

  • 두 개의 문자열 변수는 '+'로 합쳐져 출력이 가능하다.

[ 그림 3.1 두 개의 문자열이 '+'로 합쳐 출력된 모습 ]

 

 

 2) 곱하기

  • 문자열 뒤 '* 숫자'를 이어 작성하면 해당 문자열은 숫자만 큼 출력이 가능하다.

[ 그림 3.2 문자열이 숫자만큼 곱해서 출력된 모습 ]

 

 

 3) 문자열 길이 구하기

  • Python의 기본 내장 함수 "len() 함수"를 이용하면 쉽게 문자열의 길이를 구할 수 있다.

[ 그림 3.3 문자열의 길이를 출력하는 모습 ]

 

 

4. Python 문자열 인덱싱과 슬라이싱

 1) 문자열 인덱싱

  • Python은 0부터 숫자를 카운트하며, "Life is"라는 문자열을 살펴보면 아래 그림처럼 인덱싱 되어 있다.

 

[ 그림 4.1 str_1의 인덱싱 ]

 

  • 문자열 인덱싱은 뒤에서부터 카운트할 수 있으며, 마지막 단어의 인덱싱은 "-1"로 나타낸다.
    • 뒤에서부터 첫 번째 문자를 표시할 때 "-0"이 아닌 이유는 "0"이나 "-0"이나 "0"으로 동일하기 때문이다.

[ 그림 4.2 뒤에서 문자열 인덱싱 ]

 

 

2) 문자열 슬라이싱

  • 문자열에서 단순히 한 문자만을 뽑아내는 것이 아닌, 여러 문자를 한번에 뽑아내는 방법

  ① 문자열 슬라이싱 미활용

[ 그림 4.3 문자열 슬라이싱 미활용 ]

 

  ② 문자열 슬라이싱 활용 

[ 그림 4.4 문자열 슬라이싱 활용 ]

 

  • str_1[0:2]는 'M', 'y', ' '까지 출력되어야 맞는 게 아니냐고 할 수 있겠지만, 슬라이싱은 [시작 번호:끝 번호]에서 끝번호에 해당하는 것은 포함시키지 않는다.

 

5. 문자열 관련 함수들

 1) 문자 개수 세기(count)

  • 문자열 내 '특정 문자'의 개수를 출력해준다.

[ 그림 5.1 count() 함수 ]

 

 2) 위치 알려주기(find)

  • 문자열 내 특정 문자가 처음으로 나오는 위치를 반환한다. 만약 찾는 문자가 존재하지 않을 경우 '-1'을 반환한다.
    • 존재하지 않는 문자를 찾아도 오류가 발생하지 않는다.

[ 그림 5.2 find() 함수 ]

 

 3) 위치 알려주기(index)

  • find() 함수와 기능은 동일하지만, 존재하지 않는 문자를 찾을 경우 오류가 발생하게 된다.

[ 그림 5.3 index() 함수 ]

 

 4) 대문자로 바꾸기(upper)

  • 문자열 내 소문자를 대문자로 바꿔준다.

[ 그림 5.4 upper() 함수 ]

 

 

 5) 소문자로 바꾸기(lower)

  • 문자열 내 대문자를 소문자로 바꿔준다.

[ 그림 5.5 lower() 함수 ]

 

 6) 문자열 바꾸기(replace)

  • 문자열 내 다른 문자열로 치환해 준다.

[ 그림 5.6 replace() 함수 ]

 

반응형