1. 파이썬 예제 코드: 문자열 처리
1.1. 기초 파이썬 예시 코드 (5개)
기초 예제는 문자열을 만들고, 길이를 재거나, 특정 문자에 접근하는 가장 기본적인 방법을 다룹니다.
1. 문자열 생성과 인덱싱
# 작은따옴표, 큰따옴표, 세 개짜리 따옴표 모두 사용 가능합니다.
s1 = 'Hello'
s2 = "Python"
s3 = """이것은
여러 줄에 걸친
문자열입니다."""
print(s1)
print("s2의 첫 번째 글자:", s2[0]) # 'P'
print("s2의 마지막 글자:", s2[-1]) # 'n'
2. 문자열 연결(+)과 반복(*)
first = "파이썬은 "
second = "재미있다!"
# 문자열 연결
sentence = first + second
print(sentence)
# 문자열 반복
laugh = "하" * 5
print(laugh)
3. 문자열 길이 구하기 (len())
# len() 함수는 공백을 포함한 전체 문자 수를 반환합니다.
text = "안녕하세요, 인수샘입니다."
print(f"문자열 길이: {len(text)}")
4. 문자열 슬라이싱 (Slicing)
# [시작:끝] 형식을 사용하여 문자열의 일부분을 추출합니다.
jumin = "990101-1234567"
gender = jumin[7] # 성별 구분 숫자
birthday = jumin[:6] # 생년월일 앞 6자리
print("생년월일:", birthday)
print("성별 코드:", gender)
5. 대소문자 변환 (upper, lower)
word = "Python is Good"
print("대문자로:", word.upper())
print("소문자로:", word.lower())
1.2. 응용 파이썬 예시 코드 (5개)
응용 예제는 문자열을 쪼개고 합치거나, 공백을 제거하는 등 실질적인 데이터 정제 방법을 다룹니다.
1. 문자열 나누기 (.split())
# 특정 구분자를 기준으로 문자열을 리스트로 나눕니다.
data = "홍길동,구운몽,인수샘"
names = data.split(",") # 쉼표를 기준으로 나눔
print(names)
address = "서울시 강남구 역삼동"
parts = address.split() # 공백을 기준으로 나눔
print(parts)
2. 문자열 바꾸기 (.replace())
# 특정 문자열을 찾아 다른 문자열로 변경합니다.
sentence = "I like Java. Java is fun."
new_sentence = sentence.replace("Java", "Python")
print(new_sentence)
3. 공백 제거하기 (.strip())
# 문자열 양옆의 불필요한 공백이나 줄바꿈을 제거합니다.
user_input = " 인수샘 "
print(f"원본: '{user_input}'")
print(f"제거: '{user_input.strip()}'")
4. 문자열 포매팅 (f-string)
# 변수를 문자열 안에 직관적으로 삽입합니다.
name = "홍길동"
age = 25
print(f"제 이름은 {name}이고, 나이는 {age}세입니다.")
5. 문자열 개수 세기 (.count())
# 특정 문자나 단어가 몇 번 등장하는지 확인합니다.
poem = "동해물과 백두산이 마르고 닳도록"
print("백두산 등장 횟수:", poem.count("백두산"))
1.3. 심화 파이썬 예시 코드 (4개)
심화 예제는 문자열 검색, 검증, 고급 결합 기법 등을 다룹니다.
1. 리스트를 문자열로 합치기 (.join())
# 리스트의 요소들을 하나의 문자열로 합칩니다.
words = ["Life", "is", "too", "short"]
# " " (공백)을 구분자로 하여 합치기
sentence = " ".join(words)
print(sentence)
# "-"을 구분자로 하여 합치기
date_parts = ["2026", "03", "21"]
date_string = "-".join(date_parts)
print(date_string)
2. 위치 찾기 (.find() vs .index())
# 특정 부분 문자열이 시작되는 첫 번째 인덱스를 찾습니다.
text = "apple, banana"
# .find(): 찾는 문자열이 없으면 -1을 반환합니다.
print("banana의 위치:", text.find("banana"))
print("orange의 위치:", text.find("orange")) # -1
# .index(): 찾는 문자열이 없으면 ValueError 오류를 발생시킵니다.
print("apple의 위치:", text.index("apple"))
# print(text.index("orange")) # 이 코드는 오류를 발생시킴
3. 시작/끝 문자열 확인 (.startswith(), .endswith())
# 파일 확장자를 확인하거나, 특정 프로토콜로 시작하는지 검사할 때 유용합니다.
filename = "report.pdf"
url = "https://www.google.com"
if filename.endswith(".pdf"):
print("PDF 파일입니다.")
if url.startswith("https://"):
print("안전한 HTTPS 프로토콜입니다.")
4. 문자열 구성 확인 (.isdigit(), .isalpha())
# 문자열이 숫자로만 혹은 문자로만 이루어져 있는지 검사합니다.
s1 = "12345"
s2 = "Python"
print(f"'{s1}'는 숫자입니까? {s1.isdigit()}")
print(f"'{s2}'는 문자로만 되어 있습니까? {s2.isalpha()}")