본문 바로가기
Python

파이썬(Python) 기초 문자열 자료형

by 글쓰니˚ 2025. 1. 16.
반응형

 

파이썬에서 문자열은 가장 기본적이면서도 자주 사용되는 자료형 중 하나입니다. 문자열을 다루는 방법을 이해하면, 데이터 처리 및 텍스트 조작 작업에서 큰 효율성을 얻을 수 있습니다. 이번 글에서는 문자열 자료형의 기본 개념, 주요 특징, 그리고 다양한 활용 방법을 알아보겠습니다.

 

📚 목차

  1. 문자열의 기본 개념
  2. 문자열 조작 방법
  3. 고급 활용: 문자열 포매팅
  4. 문자열 인코딩과 디코딩
  5. 결론
 

1🌟 문자열의 기본 개발

문자열(String)은 문자들의 집합으로, 작은따음표(')나 큰따음표(")로 무기여서 표현합니다.

# 문자열 생성 예시

string1 = 'Hello, Python!'
string2 = "파이언 문자열"

 

주요 특징

  1. 변경 불가능(Immutable): 문자열의 내용은 생성 후 변경할 수 없습니다.
  2. 인덱스와 슬라이싱 지원: 문자열은 인덱스를 통해 특정 위치의 문자에 액세스하거나, 슬라이싱을 통해 부분 문자열을 출시할 수 있습니다.
text = "Python"
print(text[0])  # 'P' 출력
print(text[1:4])  # 'yth' 출력
 

2🌟 문자열 조작 방법

문자열 합치기와 반복

문자열은 + 역사자로 합치할 수 있고, * 역사자로 반복할 수 있습니다.

string1 = "Hello"
string2 = "World"
print(string1 + " " + string2)  # Hello World 출력
print(string1 * 3)  # HelloHelloHello 출력

 

문자열 메서드 활용

파이언은 문자열을 다류하게 다루는 방식을 제공합니다.

메서드 설명 예시
.lower() 모든 문자를 소문자로 변환 "HELLO".lower()"hello"
.upper() 모든 문자를 대문자로 변환 "hello".upper()"HELLO"
.strip() 공백이나 특정 문자 제거 " hello ".strip()"hello"
.replace() 특정 문자를 다른 문자로 교체 "apple".replace('a', 'A')"Apple"
.split() 문자열을 리스트로 분리 "a,b,c".split(',')['a', 'b', 'c']
.join() 리스트를 하나의 문자열로 결합 "",".join(['a', 'b', 'c'])"a,b,c"
 

3🌟 고급 활용: 문자열 포매티밍

f-string 포매티밍

파이언 3.6 이상에서는 f-string을 사용해 변수를 쉽게 문자열에 삽입할 수 있습니다.

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

 

format() 함수

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))
 

4🌟 문자열 인코딩과 디코딩

파이언은 유니코드(Unicode)를 기반으로 문자열을 처리합니다.

# 인코딩
text = "안녕하세요"
encoded_text = text.encode('utf-8')
print(encoded_text)  # b'\xec\x95\x88\xeb\x85\x95\xed\x95\x98\xec\x84\xb8\xec\x9a\x94'

# 디코딩
decoded_text = encoded_text.decode('utf-8')
print(decoded_text)  # 안녕하세요

 


5🌟 결론

문자열 자료형은 프로그래밍의 기본적인 데이터 처리에 필수적입니다. 파이썬의 다양한 문자열 메서드와 포매팅 기능을 활용하면 더욱 효율적으로 데이터를 처리할 수 있습니다. 이를 바탕으로 다양한 텍스트 데이터 처리 작업을 시작해 보세요! 😊

728x90
반응형

댓글