[Python] 문자열 자료형(1)
-
문자열(String)이란 문자, 단어 등으로 구성된 문자들의 집합을 의미
"Life is to short, Youn need Python" "a" "123"
-
큰따옴표(”)로 둘러싸여 있는 형태 → 숫자의 경우에도 따옴표로 둘러쌓여져 있다면 문자열!
문자열 사용법
-
큰따옴표로 양쪽을 둘러싸기
"Hello World"
-
작은따옴표로 양쪽을 둘러싸기
'Python is fun'
-
큰따옴표 3개를 연속으로 써서 양쪽 둘러싸기
"""Life is too short, You need python"""
-
작은따옴표 3개를 연속으로 써서 양쪽 둘러싸기
'''Life is too short, You need python'''
문자열 안에 작은 따옴표나 큰 따옴표를 포함
- 문자열을 만들는 방법에는 작은따옴표(’)와 큰따옴표(”)가 있음
- 그런데 문자열 안에도 작은따옴표 혹은 큰따옴표가 포함되어야 하는 경우가 있음
1. 문자열 안에 작은따옴표 포함
- 문자열 중 작은따옴표가 포함되어 있다면 큰따옴표를 사용하여 문자열을 생성
-
큰따옴표 안에 있는 작은따옴표는 문자열을 나타내기 위한 기호로 인식되지 않음!
food = "Python's favorite food is perl" print(food) # Python's favorite food is perl
-
만약
'Python's favorite food is perl'
와 같이 사용한다면'Python'
만 문자열로 인식되어 구문 오류(SyntaxError) 발생File "<stdin>", line 1 a = 'Python's favorite food is perl' ^ SyntaxError: invalid syntax
2. 문자열에 큰따옴표 포함
-
큰따옴표가 포함된 문자열이라면 작은따옴표를 사용하여 문자열을 생성
say = '"Python is very esay." he says.'
3. 역슬래시를 사용하여 포함하기
- 작은따옴표나 큰따옴표를 문자열에 포함시키는 또 다른 방법은 역슬래시(
\
)를 사용하는 것 -
역슬래시를 작은따옴표나 큰따옴표 앞에 삽입하면 역슬래시 뒤의 작은따옴표나 큰 따옴표는문자열을 둘러싼는 기호의 의미가 아니고 그 자체를 뜻하게 됨
food = 'Python\'s favorite food is perl' say = "\"Python is very esay.\" he says."
여러 줄인 문자열을 변수에 대입
- 문자열은 항상 한 줄만 있는 것은 아님!
1. 줄을 바꾸기 위한 이스케이프 코드 \n 삽입
muliline = "Life is too short\nYou need python"
- 줄바꿈 문자
\n
을 삽입하는 방법이 있지만, 읽기가 불편하고 줄이 길어지는 단점이 있음
2. 연속된 작은따옴표 3개 또는 큰따옴표 3개 사용
-
1번 방법의 단점을 극복하기 위해 파이썬에서는 다음과 같이 작은따옴표 3개(
'''
) 또는 큰따옴표 3개("""
)를 사용multiline = ''' Life is too short You need python ''' multiline = """ Life is too short You need python """ print(multiline) # Life is too short # You need python
이스케이프 코드란?
- 이스케이프(escape) 코드란 프로그래밍할 때 사용할 수 있도록 미리 정의해 둔 ‘문자 조합’을 말함
- 주로 출력물을 보기 좋게 정렬하는 용도로 사용
| 코드 | 설명 | | — | — | |
\n
| 문자열 안에서 줄을 바꿀 때 사용 | |\t
| 문자열 사이에 탭 간격을 줄 때 사용 | |\\
| \를 그대로 표현할 때 사용 | |\'
| 작은따옴표(’)를 그대로 표현할 때 사용 | |\"
| 큰따옴표(”)를 그대로 표현할 때 사용 | |\r
| 캐리지 리턴(줄 바꿈 문자, 커서를 현재 줄의 가장 앞으로 이동) | |\f
| 폼 피드(줄 바꿈 문자, 커서를 현재 줄의 다음 줄로 이동) | |\a
| 벨 소리(출력할 때 PC 스피커에서 ‘삑’ 소리가 남) | |\b
| 백 스페이스 | |\000
| 널 문자 |
- 이 중에서도 활용 빈도가 높은 것은
\n
,\t
,\\
,\'
,\"
. 나머지는 프로그램에서 잘 사용하지 않음
문자열의 연산
- 파이썬에서는 문자열을 더하거나 곱할 수 있음
문자열 더하기 : 연결
head = "Python"
tail = " is fun"
print(head + tail) # Python is fun
- 눈에 보이는 대로
head
변수와tail
변수가+
에 의해 합쳐짐
문자열 곱하기 : 반복
a = "Python"
print(a * 2) # PythonPython
*
의 의미는 우리가 일반적으로 사용하는 숫자의 곱하기의 의미와는 다름- 위 소스 코드에서
a * 2
의 의미는 a를 2번 반복하라는 뜻 - 즉,
*
는 문자열의 반복을 뜻하는 의미로 사용
문자열 길이 구하기
-
문자열의 길이는
len
함수를 사용하면 구할 수 있으며, 문자열 길이에는 공백 문자도 포함(len : length)a = "Life is too short" print(len(a)) # 17
-
len
함수는 print 함수처럼 파이썬의 기본 내장 함수로, 별다른 설정 없이 바로 사용할 수 있음
댓글남기기