파이썬의 한글 처리
파이썬은 유니코드를 기본적으로 지원하기 때문에, 파이썬 3 이상 버전에서는 한글을 비롯한 대부분의 언어를 처리하는 데 어려움이 없습니다. 여기서 중요한 몇 가지 사항을 살펴봅니다.
문자열 선언
한글 문자열은 따옴표 안에 바로 입력하여 사용할 수 있습니다. 예를 들어:
s = "안녕하세요"
print(s)
인코딩
파이썬 소스 파일은 기본적으로 UTF-8 인코딩을 사용합니다. 이는 한글 문자를 포함한 대부분의 유니코드 문자를 올바르게 처리할 수 있음을 의미합니다. 다른 인코딩을 사용하고 싶다면, 소스 파일의 첫 부분에 인코딩을 명시할 수 있습니다:
# -*- coding: cp949 -*-
그러나 오늘날에는 대부분 UTF-8 인코딩을 사용하는 것이 일반적입니다.
문자열 연산
한글 문자열도 다른 문자열과 마찬가지로 연산을 수행할 수 있습니다. 문자열을 더하거나, 반복하거나, 슬라이싱하는 등의 연산이 가능합니다:
s = "파이썬"
t = "최고!"
print(s + "은 " + t) # 출력: 파이썬은 최고!
정규 표현식
한글에 대한 정규 표현식 처리는 \uAC00-\uD7A3
범위를 사용하여 유니코드로 한글을 표현합니다. 예를 들어, 모든 한글 문자에 일치하는 정규 표현식은 다음과 같습니다:
import re
pattern = re.compile('[\uAC00-\uD7A3]+')
입출력
파이썬에서 파일을 읽거나 쓸 때, open
함수를 사용하는데, 이때 encoding
파라미터를 지정하여 한글 인코딩을 올바르게 처리할 수 있습니다. UTF-8 인코딩을 사용하는 경우, 다음과 같이 사용합니다:
# 파일 쓰기 예시
with open('example.txt', 'w', encoding='utf-8') as f:
f.write("파이썬으로 파일을 씁니다.")
# 파일 읽기 예시
with open('example.txt', 'r', encoding='utf-8') as f:
content = f.read()
print(content)
라이브러리 지원
파이썬의 다양한 라이브러리들도 한글을 잘 지원합니다. 예를 들어, 데이터 분석 라이브러리인 pandas나 문자열 처리 라이브러리인 NLTK 등은 한글 데이터를 잘 처리합니다.
주의사항
한글 처리 시 주의할 점은, 특히 다양한 환경에서 작업할 때 인코딩 문제가 발생할 수 있다는 것입니다. 예를 들어 윈도우에서는 기본 인코딩이 CP949(일명 EUC-KR의 확장 버전)일 수 있는데, 이를 명시적으로 UTF-8로 설정하지 않으면 오류가 발생할 수 있습니다. 그리고 웹 애플리케이션 개발 시, HTTP 헤더에 적절한 charset
을 명시하는 것이 중요합니다.
정리
대체로 파이썬 3.x 버전을 사용한다면 한글 처리에 있어 큰 문제는 없을 것입니다. 코드의 첫 줄에 # -*- coding: utf-8 -*-
을 명시하고, 필요한 경우 파일 입출력에서 encoding='utf-8'
을 지정하면, 대부분의 한글 처리 이슈를 해결할 수 있습니다.
'실버를 위한 코딩 > 파이썬' 카테고리의 다른 글
[파이썬] 파이썬이란? (0) | 2024.04.05 |
---|---|
파이썬의 매직 코멘트 (1) | 2024.03.22 |
파이썬 주석을 활용하는 방법 (0) | 2024.03.20 |
파이썬 설치 완료 화면의 'Disable path length limit'에 대하여 (0) | 2024.03.19 |
파이썬 디자인의 핵심 철학 (0) | 2024.03.18 |