본문 바로가기
Python/Python 개념

파이썬 문자열 다루기

by hyun-am 2020. 5. 25.

문자열

 

문자열이란

 

문자, 단어 등으로 구성된 문자들의 집합을 의미합니다. 먼저 문자열을 만들때는 다음과 같이 만들 수 있습니다.

 

S = "Special"
A = 'Apple'
L = """Life is too Short, You need Python """

print(S,A,L)

# 출력 값
## Special Apple Life is too Short, You need Python

 

문자열의 다양한 함수

 

문자열의 길이를 구하는 len( )

 

먼저 문자열의 길이를 구하는 len입니다. 위에서 만들었던 문자열 L의 길이를 구하는 예제 코드를 보겠습니다.

 

L_Size = len(L)

print(L)
print(L_Size)
 
## 출력값

# Life is too Short, You need Python
# 35

 

35라는 길이가 출력되는 것을 확인할 수 있습니다. 참고로 이 길이는 띄어쓰기 포함입니다.

 

한글도 마찬가지로 길이를 글자 하나하나가 길이 1로 측정 됩니다.

 

한글 = "한글길이 테스트"
print(한글)
print(len(한글))

## 출력 값

# 한글길이 테스트
# 8

 

문자열을 정해진 글자로 구간을 정해 자르는 split( )

 

split('')여기 안에 자르고 싶은 구간의 글자를 입력해서 글자를 쪼개줍니다. 예시 코드는 아래와 같습니다.

 

S = "이것은vV로v띄어쓰기를v대체한v글자입니다."

new_S = S.split('v')

print(S)
print(new_S)


L = "Life is to short, You need Python"
new_L = L.split(' ')

print(L)
print(new_L)

## 출력 값

# 이것은vV로v띄어쓰기를v대체한v글자입니다.
# ['이것은', 'V로', '띄어쓰기를', '대체한', '글자입니다.']
# Life is to short, You need Python
# ['Life', 'is', 'to', 'short,', 'You', 'need', 'Python']

 

잘린 단어들이 List로 만들어 진 것을 확인할 수 있습니다.

 

대문자 소문자를 만들어주는 upper(), lower()

 

소문자를 대문자로, 대문자를 소문자를 만들어주는 코드입니다. 예시 코드는 다음과 같습니다.

 

only_up = "TEST ONLY UPPER"
only_low = "test only low"

mix_up_low = "Test Mix Upper and Low"

print(only_up.lower())
print(only_low.upper())
print(mix_up_low.lower())
print(mix_up_low.upper())

## 출력 값

# test only upper
# TEST ONLY LOW
# test mix upper and low
# TEST MIX UPPER AND LOW

 

 

문자열의 시작을 확인하는 startswith(), 문자열의 끝을 확인하는 endswith()

 

문자열의 시작과 끝을 확인하는 startswith( ), endswith( ) 입니다. 이 안에 해당하는 문자열이 이것으로 시작하는지와 끝나는지를 True, False형식으로 표현합니다.

예시 코드는 다음과 같습니다.

 

a = '00-pengsoo.jpg'
b = '01-mengsoo.gif'
c = '02-dongsoo.png'

print(a.startswith('00'))
print(b.endswith('gif'))
print(c.startswith('01'))

## 출력 값

# True
# True
# False

 

문자의 공백을 지우는 lstrip(), rstrip(), strip()

이것은 코드로 보는게 이해가 더 빠릅니다. 예시 코드는 다음과 같습니다.

 

left = "               왼쪽 공백"
right = "오른쪽 공백                  "
both = "         양쪽 공백             "

print(left)
print(right)
print(both)

print(left.lstrip())
print(right.rstrip())
print(both.strip())

## 출력 값

#                왼쪽 공백
# 오른쪽 공백                  
#          양쪽 공백             
# 왼쪽 공백
# 오른쪽 공백
# 양쪽 공백

 

 

문자열을 대체하는 replace( )

 

replace 함수는 앞에 바뀌게 될 문자열, 바꿀 문자열 이렇게 되어있습니다.

String.replace('바뀌게 될 문자열', '바꿀 문자열')

 

이것 역시 예시 코드를 보는것이 편해서 예시 코드로 확인하겠습니다.

 

펭귄이라는 단어를 모두 펭수로 바꾸겠습니다.

 

Peng = """
펭수 추천! 펭귄 박사 이원영의 펭귄 이야기"
새하얀 눈과 차디찬 얼음 위를 짧은 날개를 휘릭휘릭 휘저으며 뒤뚱뒤뚱 걷는 펭귄. 언제 봐도 귀엽기만 한 펭귄의 실제 일상은 어떤 모습일까? 남극 펭씨 펭수가 인정하는 최고의 펭귄 박사이자, <여름엔 북극에 갑니다>의 저자 이원영이 신작 <펭귄은 펭귄의 길을 간다>에서 펭귄에 관한 특별한 이야기를 들려준다.
"""
print(Peng)
print("변경 후")
print(Peng.replace('펭귄','펭수'))

## 출력 값

# 펭수 추천! 펭귄 박사 이원영의 펭귄 이야기"
# 새하얀 눈과 차디찬 얼음 위를 짧은 날개를 휘릭휘릭 휘저으며 뒤뚱뒤뚱 걷는 펭귄. 언제 봐도 귀엽기만 한 펭귄의 실제 일상은 어떤 모습일까? 남극 펭씨 펭수가 인정하는 최고의 펭귄 박사이자, <여름엔 북극에 갑니다>의 저자 이원영이 신작 <펭귄은 펭귄의 길을 간다>에서 펭귄에 관한 특별한 이야기를 들려준다.

# 변경 후

# 펭수 추천! 펭수 박사 이원영의 펭수 이야기"
# 새하얀 눈과 차디찬 얼음 위를 짧은 날개를 휘릭휘릭 휘저으며 뒤뚱뒤뚱 걷는 펭수. 언제 봐도 귀엽기만 한 펭수의 실제 일상은 어떤 모습일까? 남극 펭씨 펭수가 인정하는 최고의 펭수 박사이자, <여름엔 북극에 갑니다>의 저자 이원영이 신작 <펭수은 펭수의 길을 간다>에서 펭수에 관한 특별한 이야기를 들려준다.

 

 

'Python > Python 개념' 카테고리의 다른 글

*args와 **kwargs  (0) 2020.09.14
파이썬 - 데코레이터  (0) 2020.09.14
파이썬 - list comprehension  (0) 2020.05.24
파이썬 - 모듈 Import  (1) 2020.03.30
파이썬 Lambda함수  (0) 2020.03.29

댓글