[Python3] 데이터 타입 - String

Alexandria·2023년 8월 31일
0

Python3 Basic

목록 보기
5/19
post-thumbnail

1. String

문자열 타입의 변수를 사용하기 위해서는 큰따옴표(") 혹은 작은따옴표(')를 사용할 수 있습니다.

message = 'Hello, World!'
print(f"{message} is {type(message)}")

💡 PEP 8에서는 두 형식의 차이는 없지만 하나의 스타일로 사용하도록 권장하고 있습니다.

다음과 같이 특수문자를 처리해야 할 경우 백슬래시()를 사용하여 문자열로 취급할 수 있습니다.

message = '\'Hello\' World!'
print(f"{message}")

작은따옴표나 큰따옴표 3개를 사용하면 여러 줄의 문자열을 한 번에 작성할 수 있으며, 특수문자도 무시할 수 있습니다.

message = '''Line 1 : 'Hello'
Line 2 : World!
'''
print(f"{message}")

2. Operator

Python은 간편하게 문자열을 덧셈(+) 기호를 이용하여 이어붙이거나

곱셈(*) 기호를 이용하여 문자열을 반복하여 이어붙일 수 있습니다.

a = "Hello, "
b = "World!"
print(f"{a+b}")

a = "Hello "
print(f"{a*10}")

3. Indexing and Slicing

인덱싱(Indexing)은 문자열의 위치를 통해 데이터를 가져올 수 있습니다.

a = "Hello, World!"
print(f"{a[8]}")

💡 인덱스는 0부터 시작하며, -1은 마지막을 의미합니다.

인덱싱이 1개의 데이터를 가져왔다면, 슬라이싱(Slicing)은 범위만큼 데이터를 가져올 수 있습니다.

슬라이싱 시 시작 인덱스 혹은 끝 인덱스에 빈 값을 주면 처음부터 혹은 끝부터라는 의미가 됩니다.

a = "Hello, World!"
print(f"{a[2:-2]}")
print(f"{a[:5]}")
print(f"{a[3:]}")

4. Functions

문자열과 관련하여 유용한 함수들이 존재합니다.

length는 문자열의 길이를 반환하고

lower는 모든 문자를 소문자로 변경하여 반환하며

upper는 모든 문자를 대문자로 변경하여 반환합니다.

capitalize는 첫 번째 문자에 대해서 대문자로 변경하여 반환합니다.

a = "Hello, World!"
print(f"length of {a}   : {len(a)}")
print(f"lower {a}       : {a.lower()}")
print(f"upper {a}       : {a.upper()}")
print(f"capital {a}     : {a.capitalize()}")

split은 인자 값이 주어지지 않을 때, 공백(space)을 기준으로 문자열을 잘라 list형으로 반환합니다.

인자 값이 주어지면 인자 값으로 문자열을 자릅니다.

replace는 첫 번째 인자로 주어진 문자열을 두 번째 인자로 주어진 문자열로 변경하여 반환합니다.

a = "hello, World!"
print(f"split(space) {a}: {a.split()}")
print(f"split(l) {a}    : {a.split('l')}")
print(f"replace {a}     : {a.replace('World', 'Python')}")

strip은 문자열 양옆의 공백을 지우고 반환하는 함수이며

lstrip은 좌측을 지우고 rstrip은 우측을 지웁니다.

a = "  Hello, World!  "
print(f"strip {a}       : {a.strip()}")
print(f"lstrip {a}      : {a.lstrip()}")
print(f"rstrip {a}      : {a.rstrip()}")

count는 인자로 주어진 값을 문자열에서 몇 번 사용되었는지 반환하며

findindex는 주어진 값을 문자열에서 몇 번째 인덱스에 있는지 위치를 반환합니다.

print(f"number of l     : {a.count('l')}")
print(f"index of o      : {a.find('o')}")
print(f"index of o      : {a.index('o')}")

💡 find는 찾는 값이 없을 시 -1을 반환하지만, index는 ValueError 에러가 발생합니다.

profile
IT 도서관

0개의 댓글