문자열(String) 출력

프로그램을 작성하다 보면, 문자를 저장하거나 출력해야할 경우가 있습니다. 다음은 이에 관한 내용입니다.

문자열의 기본

print('Hello Python!')
print("안녕하세요. 파이썬")
print("제 생일은 4월 23일 입니다.")
print("2018 9 1")
country = 'Korea'
city = "Seoul"
print(country)
print(city)

위에서 부터 하나씩 살펴보겠습니다. 우선 위의 내용을 출력하면 아래와 같은 내용으로 출력됩니다.

Hello Python! 
안녕하세요. 파이썬 
제 생일은 4월 23일 입니다.
2018 9 1 
Korea 
Seoul

1, 2, 3행은 단순한 문자열 출력 방법입니다. Python의 경우는 유니코드를 지원하므로 변수 지정할 때와는 달리 한글 사용이 가능합니다. 살펴보면 문자열 출력을 큰 따옴표(")또는 작은 따옴표(') 를 문자열의 앞 뒤에 배치한 것을 볼 수 있습니다. 이것은 유명한 일부 언어들(C, C++, JAVA 등)이 큰 따옴표만을 문자열 출력 부분으로 사용되는 것과는 달리 유연함을 갖추고 있다고 할 수 있습니다. 그러나, 시작과 끝이 동일한 기호로 표기되어야 합니다. 작은 따옴표로 시작되었다면 작은 따옴표로 끝내고, 큰 따옴표로 시작되었다면 큰 따옴표로 끝내야 합니다. 그렇지 않고 두 기호를 혼용해서 사용하면 에러가 출력되는 것을 확인할 수 있습니다.

4열은 숫자로만 표시된 내용입니다. 하지만, 큰 따옴표 사이에 표시되어 있으므로 문자열로 인식됩니다.

변수를 소개할 때 컴퓨터의 변수는 수학과는 달리 숫자 외의 데이터도 저장할 수 있습니다. 5행과 6행은 country와 city라는 변수에 각각 Korea, Seoul을 일력하였습니다.

예제1

자신이 태어난 고향과 현재 살고 있는 곳을 각각의 변수로 만들고 출력해 보세요.

Python에 대한 짧막한 감상을 변수를 사용하여 기록하고 출력해 보세요.

조금 더 나아간 문자열 표시 방법

위의 내용은 문자열 중에서 가장 기본적인 내용입니다. 그런데 문자를 입력할 때 보면 그내용에 따옴표를 추가해야 할 경우가 있습니다. 그 때에는 아래의 내용을 참고해 볼 수 있습니다.

text1 = '작은 따옴표 안에서는 큰 따옴표(")는 문제가 되지 않습니다'
text2 = "큰 따옴표 안에서는 작은 따옴표(')는 문제가 되지 않습니다"
text3 = "또 다른 방법으로는 \"이렇게\" 출력이 됩니다."

print(text1)
print(text2)
print(text3)

위의 내용을 보면 기본적인 사용법을 알 수 있습니다. 변수인 tex1, text2, text3 모두 큰 따옴표 또는 작은 따옴표를 출력합니다. 하지만 text3의 따옴표 출력 방법을 기억하는 것이 좋습니다. 이처럼 \를 추가해서 사용하는 것은 이스케이프 문자(Escape Character)라고 합니다. 이것을 기억하면 좋은 이유는 이 사용법이 단지 Python만이 아니라 C, C++, C#, JAVA 등 다양한 개발 언어에서 사용되기 때문입니다.

Escape character

기능

\n

줄 바꿈

\t

tab

\'

' (작은 따옴표)

\"

" (큰 따옴표)

\\

\

\r

Carrage return. 줄바꿈 문자, 커서를 가장 앞으로 이동

\f

Form feed. 줄바꿈 문자, 커서를 다음 줄로 이동

\a

알람(스피커를 통해 알람 음 출력)

\b

Back space

\000

널(Null) 문

그럼 이번에는 좀 독특한 문자열 표시를 살펴보겠습니다. 이것은 Python만의 독특한 사용방법이기도 합니다. 큰 따옴표나 작은 따옴표를 연속적으로 3번 입력하면 여러 줄 표시에서 좀 더 편하게 사용할 수 있습니다.

TextString1 = """This is multi line text string!
It doesn't matter using ' or " in this example.
Life is Short. You need "Python" """
TextString2 = '''여러줄 문자열입니다.
이 예제에서 '이나 " 의 사용은 문제없습니다.
인생은 짧습니다. '파이썬'이 필요합니다'''

print(TextString1)
print(TextString2)

TextString1이나 TextString2 모두 여러줄로 문자열을 표시하고 있습니다. 해당 내용을 Python으로 동작시켜 보면 모두 여러 행으로 표시되는 것을 알 수 있습니다. 위의 이스케이프 문자 중 줄 바꿈(\n)을 사용하지 않았음에도 말입니다. 또한 '와 "를 바로 입력했음에도 문제가 없습니다.

'''(작은 따옴표 3번) 또는 """(큰 따옴표 3번)을 앞 뒤로 쓰면 그 블럭 내에서 여러행의 문자를 표시할 수 있도록 해줍니다. 다만, 주의할 점은 3행에 끝처럼 "Python" """으로 표시한 것입니다. 같은 형태의 따옴표 뒤에 바로 3번의 따옴표를 붙일 경우에는 에러가 발생합니다.

Last updated