Welcome to the Matrix

007. 파이썬 문자열 자료형 본문

Python/PythonBasic

007. 파이썬 문자열 자료형

haru.keiko 2020. 12. 23. 13:50

파이썬 문자열 자료형 썸네일

파이썬이 제공하는 기본 자료형 중 '문자열 자료형'에 대해서 알아보겠습니다. 

 

문자열

파이썬에서 '문자열'이라는 것은 작은따옴표나 큰 따옴표로 둘러싸인 모든 것을 의미합니다. 문자 또는 단어나 문장과 같은 문자가 모인 것들을 포함하여 따옴표로 둘러싸여 있다면, 숫자도 문자열이 될 수 있습니다.

파이썬에서는 단순히 따옴표로 둘러싸인 것을 문자열이라고 한다. 

 

엥?? 

무슨 말이냐고요?

 

'안녕'이나 "안녕" 등과 같이 따옴표로 둘러싸인 것을 문자열이라고 합니다. 

또, '좋은 아침입니다.' 또는 "좋은 아침입니다."와 같이 따옴표로 둘러싸인 것을 문자열이라고 합니다. 

그리고 또, '123', "123", '123.0', "123.0"과 같이 따옴표로 둘러싸인 것을 문자열이라고 합니다. 

 

어때요? 감이 오시나요?

파이썬에서는 따옴표로 둘러싸인 것들을 문자열로 취급합니다. 

설령 숫자로 된 것들이라도 '따옴표'로 둘러싸여 있다면, 그것은 문자열입니다. ㅎㅎ

 

문자열에 대해서 파이썬 코드를 통해 조금만 살펴보아요~

파이썬 문자열 자료형의 타입을 확인하는 예제

 

문자열의 자료형(type)을 알아보기 위해 'type()'이라는 함수를 사용했습니다. 문자열의 자료형을 살펴보면, 'str'로 표시됩니다. 'String'의 줄임말이에요. 

 

마지막 두 부분만 살펴볼게요. 

'123'의 자료형은 'str'이라고 판단됩니다. 

반면, 123의 자료형은 'int'로 판단되네요. 

 

헷갈리면 안 됩니다. 

파이썬의 문자열은 따옴표로 둘러싸인 모든 것입니다~ ㅎㅎ

 

문자열의 따옴표는 왜 두 가지일까?

파이썬의 문자열은 큰 따옴표와 모두 사용한다고 했습니다. 

대부분의 프로그래밍 언어에서는 큰 따옴표를 사용해서 문자열을 표현합니다. 그런데 왜 파이썬은 두 따옴표를 모두 사용할까요?

 

일단 예를 먼저 살펴봅시다!

파이썬 문자열 따옴표 사용시 오류 상황 예제

 

문자열 안에서 따옴표를 사용하려 했을 뿐인데.. "SyntaxError: invalid syntax"라고 하는 기분 나쁜 답변을 주네요.. 

'오류(Error)'라는 것은 파이썬 인터프리터가 우리에게 뭔가 잘못됐다고 알려주는 거예요.
'Syntax Error'라는 것은 파이썬 인터프리터가 해석하기에 "지금 네가 말하고 있는 문장은 문법적으로 뭔가 잘못되어 있어.. 그래서 내가 알아들을 수가 없네.."라고 알려주는 것입니다. 

 

오류(Error)에 대해서도 나중에 자세히(?) 알아볼 기회를 가질 거예요.

일단, 지금 중요한 것은 문자열 안에 따옴표를 저렇게 넣으면 안 된다는 거예요...

 

그럼 어떻게 하라는 거죠???

문자열에서 고전적인 방법으로 따옴표를 표시하는 방법

 

일반적으로 다른 프로그래밍 언어에서는 문자열 안에서 따옴표(작은 또는 큰)를 사용하기 위해서는 '이스케이프 문자'라는 것을 사용합니다. 이스케이프 문자는 백 슬래시('\')와 또 다른 하나의 문자를 조합해 새로운 기능을 갖도록 하는 특수 문자를 의미합니다. 위 예에서는 \'와 \"가 바로 이스케이프 문자입니다.

 

하지만, 파이썬에서는 이스케이프 문자를 사용하지 않고도 동일한 문자열을 사용할 수 있습니다.

 

문자열 안에서 큰 따옴표를 사용하기 위해서는 작은따옴표로 문자열을 만듭니다. 그리고, 문자열 안에서 작은따옴표를 사용하기 위해서는 큰 따옴표로 문자를 만드는 거죠. 

바로 아래 보이는 것처럼 말이죠. 

파이썬 문자열에서 따옴표를 표현하는 방법

 

이런 목적으로 파이썬에서는 문자열을 만들기 위해 큰 따옴표와 작은따옴표를 문자열을 모두 사용합니다. 

 

별거 아닌 듯 보이지만, 사실 많은 프로그래밍 언어가 상당히 복잡하고 지저분하게 문자열을 처리하게 됩니다.

반면 파이썬은 이런 별거 아닌 듯 보이는 사소한 부분까지 사용자를 위해 배려를 해서 그런지 문자열 처리가 엄청 깔끔하고 쉽답니다. ㅎㅎ 

 

이스케이프 문자

이왕 이스케이프 문자가 나온 김에 이스케이프 문자에 대해 조금 더 알아보도록 할게요. 

 

'이스케이프 문자''이스케이프 시퀀스(Escape Sequence)'라고도 하는데, 백 슬래시('\')와 문자나 숫자를 조합해서 이루어진 특수 문자를 말합니다. 

 

주로 사용하는 이스케이프 문자는 다음과 같은 것들이 있습니다. 

이스케이프 문자 내용 설명
\' 작은 따옴표
\" 큰 따옴표
\\ 백슬래시
\n 줄바꿈
\t 탭문자
\b 백스페이스
\0 널문자

이 외에도 많은 이스케이프 문자가 있습니다. 

궁금하시면 검색해 보시길... ^^

 

이스케이프 문자가 뭔지를 알아봤으니 몇 가지 예를 통해 경험해 보아요~

파이썬에서 이스케이프 문자를 사용하는 방법

 

어때요? 

감이 오시나요? ㅎㅎ

 

여러 줄 문자열

조금 전 살펴본 이스케이프 문자 중 '\n'을 사용하면, 문자열을 여러 줄로 표현할 수 있습니다. 

문자열을 여러줄로 표현하는 전통적인 방법

 

당연히 할 수 있겠죠.. 

하지만, 문자열이 뭔가 복잡하고 지저분해 보이네요.. 

 

이때, 파이썬이 말합니다. 

"왜 저렇게 해?? 파이썬엔 여러 줄 문자열이 있다고!!"

 

네, 파이썬엔 '여러 줄 문자열'이란 것이 있습니다. 여러 줄 문자열은 세 개의 큰 따옴표 또는 작은따옴표를 이용해서 만드는 문자열입니다. 이를 이용해서 간단하게 여러 줄로 되어 있는 문자열을 표현할 수 있어요. 

파이썬에서 문자열을 여러줄로 표현하는 방법

 

세 개의 따옴표를 이용해 문자열을 만들면 동일한 세 개의 따옴표를 닫아 문자열을 완성하기 전까지 얼마든 엔터키를 입력해 줄 바꿈을 할 수 있습니다. 

소스 코드를 작성하기도 읽기도 훨씬 수월하겠죠? ㅎㅎ

 

 

지금까지 파이썬 문자열에 대해 알아봤습니다. 

다음엔 문자열로 할 수 있는 것(연산)은 어떤 것이 있는지 알아볼게요~