본문 바로가기

Programming/Python Tutorials

[PYTHON 3] Tutorials 3. Strings

string 은 컴퓨터 프로그래밍에서 일종의 텍스트라고 생각하시면 됩니다. 가령, 이름, 문장등과 같은것을 일컬어 string이라고 할 수 있겠죠.

파이썬에서는 string 을 사용하기 위해서는 single quote(' ')

혹은 double quote(" ") 을 사용합니다.

위 문장들에서 " " , ' ' 안에 있는 것을 string으로 인식합니다.


위 문장에서 'I don't think she is 20' 이 부분은 오류가 있습니다. ' ' 은 시작과 끝을 알려주어야 하는데

don't 에도 single quote가 있어서 이 부분을 문장의 끝으로 인식을 해 버린 것입니다.

이럴경우 아래 그림과 같이 double quote을 사용하여 문제 해결을 합니다.


double quote 을 사용하여 문장 전체를 string 으로 인식을 하였습니다.

위의 그림은 single quote, double quote 을 동시에 사용한 경우 입니다. 형태는 보이는 바와 같이

'   "  "   ' 

이렇게 되어 있는데, single quote 안에 double quote 을 넣어 각 quote 의 시작과 끝을 지정한 것입니다.

위와 같이 각 quote 의 시작과 끝 지점만 인식하게 하면 에러는 안 나오겠죠.

또 다른 방법인 이스케이핑(escaping: 영어뜻은 도망치다, 회피하다) 입니다.

single quote 앞에 back slash ( \ ) 를 사용하는 것입니다.

back slash 를 쓰면 그 다음에 오는 것은 normal character 로 인식을 하라는 의미입니다.

즉, don\'t  에서

\'  은 quote 이 아니라 그냥 일반 텍스트로 인식하라는 말이됩니다. 

그래서 다른 알파벳처럼 인식을 하여

에러를 회피하게 하는 것입니다.





다음으로는 파이썬 기본 함수인 print 함수를 살펴보려합니다.

print 함수는 print 함수 뒤에 오는 내용을 스크린(모니터)상에 표시하게끔 하는 함수 입니다.

프로그램을 만들다 보면 에러없이 잘하고 있는지 혹은 어떤 값이 들어있는지 확인을 해보면서 해야 하는데,

이 때 print 함수를 사용하면서 프로그램을 작성하면 진행 상황을 체크해 볼 수 있겠죠.


python 2.x 에서는 

print "Hello World" 

와 같이 ( ) 괄호를 사용하지 않는데,

python 3.x 에서는 ( ) 괄호를 사용한다는 차이가 있습니다.

사용하는 버전에 맞게 쓰시면 될 것입니다.


지금 쓰는 버전은 python 3.5 이므로 ( ) 를 사용합니다.

print("Hello World!!") <--- 이 말은 Hello World!! 를 화면에 보여줘~ 라는 의미입니다.

이번에는 만약 컴퓨터의 경로(path) 를 화면에 보여달라고 할 때, 

위의 그림처럼 print 를 사용할 수 있을 것입니다.

그런데, 오류가 보이네요. 뭐가 문제일까요?

c:\Desktop\Picture  와 ature  가 줄 바꿈이 되어 있고, nature 앞에 'n' 이 없네요.

이 문제는 앞서 언급한 back slash( \ ) 에 의한 escaping 때문입니다.

\D , \P 는 문제가 없는데   \n 은 프로그래밍에서 의미를 가지기 때문입니다.

\n : 많은 프로그래밍 서적에서 개행 이라는 표현을 쓰는 부분이죠. 

즉, \n 을 만나면 다음줄로 이동하라는 의미 입니다.

그렇다면 위의 오류를 컴퓨터가 우리가 의미한대로 인식하도록 하려면 어떻게 할까요?


print(r'c:\Desktop\Picture\nature')

와 같이 single quote 앞에 'r' 을 넣어 주는 것입니다.

'r' 의 의미는 'raw'로서 특별한 의미를 지니는게 없다 입니다.


위의 그림은 string 을 변수로 할당을 하고 string 을 붙여놓은 것입니다.

firstName 에 "Jason" 을 할당해 주었으므로,

firstName 은 string 형이 된 것입니다.

파이썬에서는 두 string 을 합칠 경우 단순하게 '+' 기호를 사용하면 됩니다.

즉, 서로 다른 두 문장, 단어들을 하나로 만들 때  '+' 를 사용하면 된다는 얘기죠.

이미 할당한 변수에 다른 string 을 붙여 본 화면입니다.

이렇게 할당한 변수를 여러번 반복할 때, 위와 같이 '*' 곱셈 기호를 사용하면 그 횟수만큼 반복이 됩니다.

python 의 특징 중 하나인데, 다른 언어에서는 이 부분을 구현하는게 아주 쪼~끔 까다롭습니다.

이러한 점들이 모여 쉬운 언어로 python 이 각광을 받고 있는 이유이기도 하죠.


자, String 은 여기까지 입니다. 수고하셨습니다.