십대를 위한 코딩/십대를 위한 파이썬

07. 문자열(str)과 튜플(tuple)

forSilver 2025. 3. 28. 15:33
반응형

📘 Day 07. 문자열(str)과 튜플(tuple)


1. 문자열(str) 심화

🔄 시퀀스 자료형의 반복

  • str, list, tuple 등 시퀀스 자료형은 **반복자(iterator)**를 내장하고 있어 for문을 통해 값을 하나씩 순회할 수 있음
  • 인덱스를 함께 사용하려면 enumerate() 함수를 활용
text = "Python"
for index, char in enumerate(text):
    print(index, char)

🔧 문자열 메서드(method)

  • 문자열은 객체이므로, 메서드를 통해 다양한 처리를 수행할 수 있음
  • 메서드는 일시적으로 값을 처리하며, 원본 문자열은 변하지 않음
s = "Hello Python"
print(s.upper())     # HELLO PYTHON
print(s.find("P"))   # 6

is로 시작하는 메서드는 True/False 값을 반환
예: isalpha(), isdigit(), isspace()


📝 형식 문자열 포매팅

① % 방식 (기존 방식)

name = "홍길동"
score = 95
print("%-10s의 점수는 %5d점입니다." % (name, score))

② format() 메서드

print("{0:<10}의 점수는 {1:5}점입니다.".format(name, score))

③ f-string (추천, Python 3.8 이상)

print(f"{name:<10}의 점수는 {score:5}점입니다.")
  • {변수명:<칸수}: 왼쪽 정렬
  • {변수명:>칸수}: 오른쪽 정렬
  • {변수명:8.2f}: 실수 출력 (전체 8칸, 소수점 이하 2자리)

🔍 역슬래시 \ 사용 주의

  • 제어문자(\n, \t) 표현 외에 역슬래시 자체를 출력하려면 \\ 사용
print("C:\\Users\\Python")

2. 튜플(tuple)

📌 개념 정리

  • 여러 개의 값을 하나로 묶어 저장하는 불변형 시퀀스 자료형
  • 값 변경, 추가, 삭제가 불가능
  • 리스트보다 속도는 빠르며, 안전하게 데이터를 묶어둘 때 유용

🧾 생성 방법

t1 = (1, 2, 3)                # 일반적인 튜플
t2 = 1, 2, 3                  # 괄호 생략 가능
t3 = (5,)                     # 요소가 1개인 튜플은 꼭 쉼표 사용
t4 = tuple([1, 2, 3])         # 형변환을 통한 생성
empty = ()                   # 빈 튜플

🛠 튜플의 공통 연산

연산 예시 설명

인덱싱 t[0] 특정 위치의 값 접근
슬라이싱 t[1:3] 부분 튜플 생성
길이 확인 len(t) 요소 개수 반환
포함 여부 x in t 특정 값 포함 확인
연결 t1 + t2 튜플 결합
반복 t * 3 튜플 반복 생성

🔁 중첩 튜플

  • 튜플 안에 또 다른 튜플이 포함될 수 있음
nested = (1, (2, 3), 4)
print(nested[1][0])  # 2

📚 튜플 메서드

메서드 설명 예시

count() 특정 값의 개수 반환 t.count(1)
index() 특정 값의 인덱스 반환 t.index(2)

✅ 오늘의 정리

항목 설명

str 불변형 문자열 자료형, 메서드로 다양한 처리 가능
enumerate() 시퀀스의 인덱스와 값을 함께 반복
문자열 포매팅 %, format(), f-string 지원
tuple 여러 값을 저장하는 불변형 시퀀스 자료형
튜플 연산 인덱싱, 슬라이싱, 길이 확인, 연결 등 사용 가능
튜플 메서드 count(), index() 등 제한적 지원

다음 차시에서는 리스트(list)의 생성과 활용을 중심으로, 가변형 시퀀스 자료형의 특징을 학습합니다.