파이썬(Python)

[ Basic ] 파이썬 문자열(Python String Data Type)

카루루1007 2022. 9. 2. 19:04
728x90
반응형
SMALL
◆ 문자열이란?

문자열은 문자들의 집합입니다.

공백과 특수문자 뿐만아니라 숫자역시 문자열안에 포함될 수 있습니다.

str_data = "Apple Pie"

위와 같이 입력하면, str_data 라는 변수에 [ Apple Pie ]라는 문자열을 입력합니다.

 

◆ 문자열의 특징

파이썬에서 문자열은 세가지 특징이 있습니다.

첫째. 문자열은 각각의 문자로 구성되어 있습니다.

공백, 특수문자뿐 아니라 숫자도 포함될 수 있습니다.

둘째. 문자열은 길이를 가지고 있습니다.

셋째. 문자열에 포함된 각각의 문자 또는 부호는 위치값을 가지고 있습니다.

 

◆ 문자열을 사용하는 방법

파이썬에서 문자열임을 나타내려면 큰따옴표[ " ] 또는 작은따옴표[ ' ]를 사용합니다.

큰따옴표(또는 작은따옴표)는 문자열의 시작과 끝을 알려줍니다.

str_data = "Apple Pie"
print(str_data)
str_data2 = 'Apple Pie'
print(str_data2)

위 코드를 실행하면 똑같이 [ Apple Pie ]가 출력됩니다.

만약 큰따옴표 안에 작은 따옴표가 있거나, 그 반대일 경우 안에 있는 것은

문자로 인식이 됩니다.

str_data = "He said, 'Hello, Python'"
print(str_data)

위 코드를 실행하면 [ He said, 'Hello, Python' ]이 출력됩니다.

 

만약 큰따옴표 안에 큰따옴표를 또는 작은따옴표 안에 작은따옴표를 사용한다면

에러가 발생할 수 있습니다.

print("I said, "Hello, Wolrd"").

위 코드를 실행하면 아래와 같이 SyntaxError가 발생합니다.

 

길이가 긴 문자열을 입력할 때에는 백슬래시( \ )를 사용하여 입력할 수 있습니다.

백슬래시( \ )를 이용하면 출력은 한줄로 나타납니다.

str1_data = "동해물과 백두산이 마르고 닳도록 \
하느님이 보우하사 우리나라 만세 \
무궁화 삼천리 화려 강산 \
대한 사람 대한으로 길이 보전하세"

print(str1_data)
 

위 코드를 실행하면 아래와 같이 결과나 나오게 됩니다.

동해물과 백두산이 마르고 닳도록 하느님이 보우하사 우리나라 만세 무궁화 삼천리 화려 강산 대한 사람 대한으로 길이 보전하세

다른 방법으로 세개의 큰따옴표(또는 세개의 작은따옴표)를 사용할 수 있습니다.

세개의 큰따옴표(또는 세개의 작은따옴표)를 사용하면 입력한 그대로 출력이 됩니다.

str1_data = """동해물과 백두산이 마르고 닳도록
하느님이 보우하사 우리나라 만세
무궁화 삼천리 화려 강산
대한 사람 대한으로 길이 보전하세"""

print(str1_data)
 

위 코드를 실행하면 아래와 같이 결과가 나오게 됩니다.

동해물과 백두산이 마르고 닳도록
하느님이 보우하사 우리나라 만세
무궁화 삼천리 화려 강산
대한 사람 대한으로 길이 보전하세

 

◆ 문자열 합치기

문자열을 합치고 싶을 경우 [ + ]를 사용하여 합칠 수 있습니다.

str1 = "apple"
str2 = "pie"
str3 = str1+str2

print(str3)

위 코드를 실행하면 결과는 [ applepie ]입니다.

만약 중간에 공백을 넣고 싶다면

str1 = "apple"
str2 = "pie"
str3 = str1 + " " + str2

print(str3)

또는 

str1 = "apple "
str2 = "pie"
str3 = str1+str2

print(str3)

이런 식으로 작성하게 되면 [ apple pie ]가 출력됩니다.

 

◆ 문자열의 길이

맨 처음에서 문자열은 길이를 가지고 있다고 말씀드렸습니다.

문자열의 길이를 확인하는 방법은

파이썬에서 기본으로 제공하는 함수 len() 을 사용하면 됩니다.

print(len("abc"))

를 실행하면 [ 3 ]이라는 결과가 출력됩니다.

str1 = "apple"
str2 = "pie"
str3 = str1 + " " + str2

print(str3)

print(len(str3))
 
위 코드를 실행하면 결과는 아래와 같습니다.
apple pie
9
결과에서 보듯이 문자열의 길이에는 공백도 포함됩니다.
 
◆ 문자열의 위치
 

문자열에 포함된 각각의 문자 또는 부호는 위치값을 가지고 있습니다.

str1 = "apple pie"
print(str1[0])

위 코드를 실행하면 [ a ]가 출력됩니다.

만약 print(str1[9]) 를 실행하면 에러가 발생합니다.

만약에 특정 문자열의 마지막 문자를 알고 싶다면,

str1 = "apple pie"
index_num = len(str1)
print(str1[index_num-1])

또는

str1 = "apple pie"
index_num = len(str1) - 1
print(str1[index_num])

이와같이 작성하고 실행하시면 됩니다.

len() 함수를 이용해서 문자열의 길이를 확인하면 [ 9 ]

하지만 문자열의 위치의 시작은 [ 0 ] 이기에 [ -1 ]을 해줍니다.

 

◆ 문자열 자르기, 문자열 나누기

만약 [ apple pie ]라는 문자열에서 앞에서 세번째까지 문자를 추출하려면

다음과 같이 하면됩니다.

str1 = "apple pie"
print(str1[0] + str1[1] + str1[2])

또는

str1 = "apple pie"
print(str1[0:3])

str1[0:3] 의 의미는 위치값 0부터 위치값 2까지( 0, 1, 2 ) 3개를 의미합니다.

str1[:3]으로 작성해도 결과는 같습니다.

print(str1[5:]

와 같이 작성한다면 위치값 5부터 끝까지라는 의미이며 [ pie]가 출력됩니다.

 

728x90
반응형
LIST