-
입문자를 위한 파이썬 기초 #8. 문자열 다루기파이썬 2021. 1. 12. 00:30728x90
문자열
파이썬으로 문자열을 다뤄보자. 문자열은 문자를 나열한 집합이다. 쌍따옴표(")나 홑따옴표(')를 사용해 문자열을 입력한다. 두 가지를 번갈아 사용하거나 역 슬래시(\)를 사용해 쌍 따옴표나 홑 따옴표를 문자열의 일부로 사용 가능하다. 다음 예시를 직접 실행해보면서 문자열을 익혀보자.>>> 'Hello' 'Hello' >>> "Hello" 'Hello' >>> "I don't like you" "I don't like you" >>> 'You said "I like you"' 'You said "I like you"' >>> "Please. don\'t go..." "Please. don't go..."
여러 줄의 문장은 """ 나 '''를 사용하면 편리하다. 이 문구에서 엔터는 자동으로 새 줄로 인식한다.
>>> print(""" Hello. Click this button. Please...""") Hello. Click this button. Please...
문자열 사이에는 이스케이프 문자를 사용할 수 있다. 이스케이프는 탈출한다는 의미를 가진다. 이스케이프 문자(\)를 사용해 본래의 기능에서 빠져나와 다음 표의 기능을 사용할 수 있다.
다수의 문장을 입력할 때 \를 사용하면 엔터키를 무시한다.
>>> print("""\ Hello. Click this button. Please...""") Hello. Click this button. Please...
\n은 개행한다. (행을 바꾼다.)
>>> print("1st\n2nd") 1st 2nd
문자열 앞에 r을 삽입하면 raw string으로 사용해 앞에 있는 이스케이프 특수 문자를 무시한다.
>>> print('c:\new') c: ew >>> print(r'c:\new') c:\new
연산
문자열에 곱하기 연산(*)을 사용하면 문자를 여러 번 출력하고 더하기 연산을 사용하면 문자열을 더한다.>>> 'AB' + 'C' 'ABC' >>> 'A' * 20 'AAAAAAAAAAAAAAAAAAAA'
데이터 조회
대괄호 ([,])로 문자열 데이터에서 필요한 일부분만을 조회가 가능하다. 문자열의 첫 문자는 0번이다. 문자열을 대괄호 안에 콜론(:)을 사용하면 인덱스 범위로 구한다.>>> s1 = "abcdefghijk" >>> s1[0] 'a' >>> s1[1] 'b' >>> s1[3:4] 'd' >>> s1[0:4] 'abcd'
범위 데이터 조회에서 앞을 생략하면 처음부터, 뒤를 생략하면 끝까지 조회한다.
>>> s1[:5] 'abcde' >>> s1[5:] 'fghijk'
마이너스(-)를 사용하면 뒤에서부터 조회한다.
>>> s1[-1] 'k' >>> s1[-4:-1] 'hij'
문자열 내에 있는 특정 문자열을 찾고 싶으면 find나 index를 사용한다.
find와 index는 문자열을 찾으면 해당 데이터가 몇 번째 위치하는지 알려준다.>>> s1.find('ab') 0 >>> s1.find('c') 2 >>> s1.index('a') 0
만약 데이터를 찾지 못하면 find는 -1, index는 오류를 출력하니 find 사용을 권장한다. 어느 정도 규모가 있는 프로그램에서 문자열을 찾는 기능을 삽입할 때 오류가 발생하면 프로그램이 멈추기 때문이다.
>>> s1.find('z') -1 >>> s1.index('z') Traceback (most recent call last): File "<pyshell#31>", line 1, in <module> s1.index('z') ValueError: substring not found
'파이썬' 카테고리의 다른 글
입문자를 위한 파이썬 기초 #10. 다양한 데이터 자료형 (0) 2021.01.14 입문자를 위한 파이썬 기초 #9. 입력과 출력 (0) 2021.01.13 입문자를 위한 파이썬 기초 #7. 산술연산과 변수 (0) 2021.01.11 입문자를 위한 파이썬 기초 #6. 들여쓰기와 주석 (0) 2021.01.10 입문자를 위한 파이썬 기초 #5. IDLE 편집기 사용하기 (0) 2021.01.09