2015년 5월 12일 화요일

파이썬(python)의 문자열 개요

 파이썬에서 문자열은 큰따옴표(“...”) 혹은 작은 따옴표 (‘...’)로 묶인 문자들의 집합이다.

“Hello world.”
‘Mokpo National Univ.’
“12.3”

위의 예는 모두 문자열을 나타낸다. 12.3은 숫자이고 이것을 따옴표로 묶은 “12.3”은 문자열이다. 즉, 문자’1’, 문자’2’, 문자’.’, 문자’3’ 의 배열(array)이다. 파이썬에서 문자형이라는 자료형은 별도로 없다. 다른 언어(C/C++, JAVA, C# 등)에서는 보통 작은 따옴표는 한 문자를 표현할 때 사용되지만 파이썬에서는 문자열을 입력할 때 사용한다는 것에 유의하자.

 문자열을 입력하는 방법을 왜 두 가지로 마련해 놓았을까? 작은 따옴표가 포함된 문자열 혹은 큰따옴표가 포함된 문자열을 쉽게 입력할 수 있기 때문이다.

‘He said “hi”. ’
“I’m your father.”

 파이썬 문자열에도 C언어의 printf()함수에서 사용하였던 특수 문자를 사용할 수 있다. 특수문자는 역슬래시(\ 는 여기서는 escape cahracter 라고 한다.)로 시작하며 특수한 용도로 사용된다. 다음 표에 주로 쓰이는 특수 문자를 정리하였다.

[표 1 ] 파이썬의 문자열에 쓰이는 특수문자
문자
설명
\n
줄바꿈
\t
수평 탭(tab)
\\
‘\’문자 자체를 의미
\’
작은따옴표 문자
\”
큰따옴표 문자

예를 들면 다음과 같다.

“He sais \”How are you?\””
“Hi.\nHello.”
‘He\’s finished.’

단 문자열의 중간에 줄바꿈 기호 ‘\n’이 들어가면 가독성이 떨어지므로 파이썬에서는 줄바꿈 기호를 타이핑하지 않고 그대로 입력할 수 있는 방법으로 “”” ... “”” 과 ‘’’ … ’’’ 를 제공한다.

>>> s = “””HI
Hello”””

라고 입력하고 그 결과를 확인해 보자.

>>> s

문자열 s에는 사용자가 엔터키로 입력한 줄바꿈 기호가 ‘\n’으로 자동으로 치환되었음을 알 수 있다.

만약 문자열 안의 ‘\’ 문자를 이스케이프 문자로 간주하지 않고 단순 문자로 사용하고 싶다면 ‘\\’와 같이 입력해도 되지만 한 문자열 안에 이런 경우가 많이 발생한다면 문자열 앞에 r을 붙이면 된다. 문자열 앞에 r이 붙으면 그 문자열 안의 모든 ‘\’는 단순 문자로 처리되며 결과 문자열에서는 ‘\’문자가 자동으로 ‘\\’로 변환된다.

>>> r'Hi.\nMy name:\tjhp'
'Hi.\\nMy name:\\tjhp'

이 방법은 특히 정규식(regular express)을 다룰 때 유용하다.

댓글 없음:

댓글 쓰기