[5] 파이썬 입문 - 문자열 다루기
문자열은 프로그램에서 매우 많이 사용되는 데이터입니다. 사람의 이름, 직책, 소속, 주소, 주민번호 모든 것이 문자열입니다. 즉 숫자가 아닌 것은 다 문자열인 셈이지요. 그래서 프로그램에서 문자열을 저장하고 그것으로 계산하는 것이 중요한 기능이 됩니다.
앞에서 이름에 문자열을 넣어둘 수 있다는 것을 보았습니다.
> a = 'Hello World'
> a
Hello World
문자열은 위에 본 것처럼 홑따옴표(' ')를 써서 나타낼 수도 있고 쌍따옴표(" ")를 써서 나타낼 수도 있습니다. 흔히 홑따옴표를 더 많이 사용합니다. 따옴표 안에는 같은 따옴표 기호는 나올 수 없습니다. "어머니가 "잘 다녀오너라"라고 말씀하셨습니다" 라고 하면 파이썬 실행환경은 "어머니가 잘" 까지만 문자열이라고 해석합니다. 이럴 때 '어머니가 "잘 다녀오너라"라고 말씀하셨습니다'라고 하면 중간에 인용한 부분까지 하나의 문자열로 표현될 수 있습니다.
문자열의 길이는 제한이 없지만 문자열 안에서 줄바꿈을 넣을 수가 없습니다. 파이썬 실행환경은 엔터가 들어가면 명령문 한 줄이 끝났다고 생각하기 때문에 문자열이 닫히지 않은채로 줄바꿈이 나오면 오류라는 메시지가 나오게 됩니다.
이럴 때를 위해 파이썬은 세따옴표를 제공합니다. 홑따옴표 세번 또는 쌍따옴표 세번으로 문자열을 표시하면 중간에 줄바꿈이 나오는 여러 줄 문자열도 표시할 수 있습니다.
문자열도 +와 * 연산을 할 수 있고 비교 연산이 가능합니다. 문자열의 +는 두 문자열을 붙인 새로운 문자열을 만들어주게 되고 *는 같은 문자열을 수만큼 반복하여 붙인 문자열을 만들어 줍니다.
문자열의 비교는 사전순서로 크기가 정해지게 됩니다. ==는 완전히 같은 문자열에 대해서만 True를 돌려줍니다.
주의해야 되는 것은 파이썬에서는 비교는 숫자끼리 또는 문자열끼리만 가능하다는 것입니다. 숫자와 문자열을 비교하면 프로그램은 TypeError 오류를 일으키게 됩니다. 숫자가 들어와야 될 곳에 문자열이 있다는 오류입니다. 프로그램을 개발하다보면 오류 메시지가 나오는 것에 익숙해 지게 됩니다. 사람은 프로그래밍 언어에 익숙할 수가 없고 이렇게 하면 되지 않을까 라고 생각하고 프로그램을 작성하는 것이므로 처음에는 당연히 오류가 많이 발생할 수밖에 없습니다. 중요한 것은 오류가 발생해도 "당황하지 말고" 자연스럽게 오류메시지를 읽어보고 뭐가 문제인지 발견하는 것입니다. 이게 익숙해 지면 오류를 겁내지 않게 되고 프로그램을 작성하는데 오히려 오류 메시지가 도움이 된다는 것을 알게 됩니다. 또한 오류가 왜 났는지 모를 때는 인터넷 검색을 해보는 것도 방법입니다. 인터넷에서 비슷한 것을 설명하는 페이지를 발견하게 될 것입니다.