파이썬의 기초 자료형: 문자열 자료형

파이썬의 기초 자료형: 문자열 자료형

파이썬 공부

2024-10-16 01:39:25


파이썬 문자열 자료형

파이썬 문자열 자료형

파이썬에서 문자열(String)은 문자의 나열로 구성된 자료형으로, 문자뿐만 아니라 공백, 숫자, 특수 기호도 포함할 수 있습니다. 문자열 자료형은 주로 텍스트 데이터를 표현하는 데 사용되며, 큰따옴표(" "), 작은따옴표(' '), 혹은 삼중 따옴표(""" """ 또는 ''' ''')를 사용해 정의할 수 있습니다.

string1 = "Hello, World!"    # 큰따옴표 사용
string2 = 'Python is great'  # 작은따옴표 사용
string3 = """This is a multiline
string"""                    # 삼중 따옴표 사용 (여러 줄로 구성된 문자열)

문자열의 특징

1. 변경 불가능(Immutable)

문자열은 변경 불가능한 자료형입니다. 즉, 문자열이 한번 정의되면 그 내용을 변경할 수 없습니다. 문자열의 일부만 바꾸는 것은 직접적으로 불가능하며, 대신 새로운 문자열을 생성해야 합니다.

2. 인덱싱과 슬라이싱

문자열은 각각의 문자가 인덱스 번호를 가지며, 이를 통해 특정 문자에 접근할 수 있습니다. 파이썬의 인덱스는 0부터 시작합니다.

text = "Python"
print(text[0])  # 'P'
print(text[-1]) # 'n' (마지막 문자)

문자열의 일부분을 잘라낼 수 있는 슬라이싱도 지원됩니다.

print(text[1:4])  # 'yth'
print(text[:2])   # 'Py'
print(text[2:])   # 'thon'

3. 문자열 연산

문자열은 + 연산자를 이용해 결합할 수 있습니다(문자열 연결).

str1 = "Hello"
str2 = "World"
result = str1 + " " + str2  # "Hello World"

또한 문자열을 * 연산자를 이용해 반복할 수도 있습니다.

repeated = "Hello " * 3  # "Hello Hello Hello "

4. 문자열 메서드

문자열 자료형에는 다양한 유용한 메서드들이 내장되어 있어 문자열을 조작할 때 사용됩니다. 예를 들면:

  • str.upper(): 문자열을 모두 대문자로 변환
  • str.lower(): 문자열을 모두 소문자로 변환
  • str.strip(): 문자열의 앞뒤 공백 제거
  • str.split(): 특정 구분자를 기준으로 문자열을 나눔
  • str.replace(a, b): 문자열의 특정 부분을 다른 문자열로 대체
  • str.find(sub): 문자열 내에서 부분 문자열의 첫 번째 위치 반환
greeting = "  Hello, Python!  "
print(greeting.strip())          # "Hello, Python!"
print(greeting.upper())          # "  HELLO, PYTHON!  "
print(greeting.replace("Python", "World"))  # "  Hello, World!  "

5. 포매팅

문자열 포매팅은 변수를 문자열에 삽입하는 기능을 제공합니다. 파이썬에서는 다양한 문자열 포매팅 방법이 있습니다.

f-strings (파이썬 3.6 이상)

name = "Alice"
age = 25
print(f"My name is {name} and I am {age} years old.")

str.format() 메서드

print("My name is {} and I am {} years old.".format(name, age))

퍼센트(%) 포매팅

print("My name is %s and I am %d years old." % (name, age))

요약

  • 문자열은 큰따옴표나 작은따옴표로 정의됩니다.
  • 문자열은 변경 불가능하며, 인덱싱과 슬라이싱이 가능합니다.
  • 문자열 결합(+) 및 반복(*) 연산이 가능합니다.
  • 다양한 내장 메서드와 포매팅 기능을 제공합니다.

이러한 기능들을 활용하면 문자열 데이터를 쉽게 다루고 조작할 수 있습니다.


답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다