문자열 str
데이터 타입은 텍스트 처리를 위해 사용되는 문자열을 나타낸다. str
객체 안에 들어가는 값은 일련의 문자들이다. 한 쌍의 작은따옴표 안에 일련의 문자들을 넣어 str
형 리터럴을 지정할 수 있다. 예를 들어 'ab'
는 문자 'a'
다음에 'b'
, 두 개의 문자를 저장하고 있는 str 객체를 나타낸다. 문자열에 들어갈 수 있는 문자들은 많이 있지만, 일반적으로 영문자, 숫자, 기호, 탭이나 개행 문자와 같은 공백 문자를 주로 표현한다. 역슬래시(\
)를 사용해 특별한 의미를 가진 문자들도 표현할 수 있다. 예를 들어 '\t'
, '\n'
, '\\'
, "\"
은 각기 탭, 개행 문자, 역슬래시, 작은따옴표를 나타낸다.
▼ 표 1.2.3 파이썬 str 데이터 타입
값 |
일련의 문자들 |
리터럴 예 |
'Hello, World' |
'Python\'s' |
|
연산 |
연결 |
연산자 |
+ |
더하기표(+
)를 이용하면 문자열 두 개를 연결(concatenate)할 수 있다. 즉 더하기표는 두 개의 str
객체를 피연산자로 받아 첫 번째 str
객체에 들어 있는 문자열 뒤에 두 번째 str
객체에 들어 있는 문자열을 값으로 가지는 새로운 str
객체를 생성한다. 예를 들어 표현식 '123' + '456'
은 값이 '123456'
인 str
객체로 평가된다. 이 예제에서 알 수 있듯이 +
연산자를 두 개의 str
객체에 적용(문자열 연결)하면 +
연산자를 두 개의 int
객체에 적용할 때와 아주 다르게 작동한다.
▼ 표 1.2.4 str 표현식 예
표현식 |
값 |
설명 |
'Hello, ' + 'World' |
'Hello, World' |
연결 |
'123' + '456' |
'123456' |
덧셈이 아님 |
'1234' + ' + ' + '99' |
'1234 + 99' |
연결 연산 두 번 |
'123' + 456 |
실행 오류 |
두 번째 피연산자가 str이 아님 |
설명 간소화 | 이제부터 엄격히 구분해야 하는 경우를 제외하고 문자열이라고 할 때는 str
형 객체를 의미한다. 그리고 'abc'
값을 가진 str
형 객체라고 하지 않고, 간단히 'abc'
라고 부른다.