문자열과 문자열 연산 (string)
기본 데이터 중 문자열으로 구성된 것에 대한 예제 입니다.
문자열
# <class 'str'>
string = "Hi"
print(type(string))
print("Hello world")
print('백문이불여일견 백견이불여일타')
print("123")
# 문자열 안에서 따옴표, 쌍따옴표 사용
print("문자열은 문자, 단어들의 '집합'입니다.")
# 문자열은 문자, 단어들의 '집합'입니다.
print('문자열은 문자, 단어들의 "집합"입니다.')
# 문자열은 문자, 단어들의 "집합"입니다.
# 이스케이프 문자 \\
print("\\'이스케이프\\"")
# '이스케이프"
print("\\'이스케이프\\"\\\\")
# '이스케이프"\\
print("백문이불여일견\\n백견이불여일타")
# 줄바꿈
# 백문이불여일견
# 백견이불여일타
print(r"백문이불여일견\\n백견이불여일타")
# 이스케이프 문자 무시
# "백문이불여일견\\n백견이불여일타"
문자열 연산
hi = "안녕"
more_politely = "하세요"
print(hi + more_politely) # 안녕하세요
print(hi*10) # 안녕안녕안녕안녕안녕안녕안녕안녕안녕안녕
# 문자열의 길이
print(len(hi)) # 2
# 문자열의 인덱싱과 슬라이싱
print(hi[0]) # 안
print(hi[-1]) # 녕
print(more_politely[:2]) # 하세
print(more_politely[2]) # 요
# 문자열 바꾸기
# 문자열.replace(타겟문자, 바꿀문자)
print(more_politely.replace("하세요", "요세하")) # 요세하
# 문자열 포멧팅
age = 10
print("%s%s, 저는 누구누구입니다" %(hi, more_politely))
print("%s%s, 저는 누구누구입니다. %d살이에요" %(hi, more_politely, age))
# format 함수를 이용한 포멧팅
print("{0}{1}, 저는 누구누구입니다".format(hi, more_politely))
# f-string
print(f"{hi}{more_politely}, 저는 누구누구입니다.")
# 소수점 표현 f-string
pi = 3.1415926535
# f"{실수:몇번째자리까지}"
print(f"{pi:0.2f}") # 소수점 3번째 자리에서 반올림됩니다. 3.14
print(f"{pi:0.3f}") # 소수점 4번째 자리에서 반올림됩니다. 3.142
# 문자열 관련 함수들
string = "aabbaeda"
# 개수 세기
print(string.count("a")) # 4
# 위치 찾기
print(string.find("e")) # 5
print(string.find("b")) # 찾는 문자가 여러개라면 가장 첫번째자리를 반환합니다. 2
print(string.find("z")) # -1 존재하지 않으면 -1을 반환합니다.
# index라는 함수도 위치를 찾는데 사용되나
# 차이로는 존재하지 않을시 에러를 발생시킵니다.
print(string.index("z")) # ValueError: substring not found
# 문자열 삽입
print(".".join(string)) # 각각 문자 사이에 "."을 삽입 a.a.b.b.a.e.d.a
# 대문자 소문자 변환
print(string.upper()) # AABBAEDA
print("AABBAEDA".lower()) # aabbaeda
# 공백 지우기
blank_string = " blank string "
# 오른쪽 공백 지우기
print(blank_string.rstrip()) # " blank string"
# 왼쪽 공백 지우기
print(blank_string.lstrip()) # "blank string "
# 양쪽 공백 지우기
print(blank_string.strip()) # "blank string"
# 문자열 나누기
split_string = "this : split string"
# split(기준으로나눌문자)
# split() 공백을 기준으로 나누겠다.
# split(":") : 을 기준으로 나누겠다
print(split_string.split()) # ['this', ':', 'split', 'string']
print(split_string.split(":")) # ['this ', ' split string']
Last updated