2016년 3월 14일 월요일

파이썬 2.x 한글 에러

본문은 파이썬 버전 3.5로 작성된 코드를 2.7로 변형 할때, 간혹 생겼던 한글 문제를 해소하는 방법을 다룬다.

1. 코드에 한글이 들어 갔을 때 발생하는 문법 에러

에러 코드:
SyntaxError: Non-ASCII character …

해결 방안:
스크립트 첫번째 줄에 사용할 코드 타입을 명시해 준다.
#-*- coding: utf-8 -*-

2. 변수에 한글이 들어 갔을 때 간혹 발생하는 에러

에러코드:
UnicodeDecodeError: 'ascii' codec can't decode byte …

해결 방안:
스크립트 서두에 기본 인코딩을 지정한다.
import sys
reload(sys)
sys.setdefaultencoding('utf-8')

**
데이터에 직접 명세할 수도 있다.
‘한글’.decode(‘UTF-8’)
or
u’한글’

**
기본 인코딩으로 python 2.x에서는 ASCII, 3.x에서는 UNICODE를 사용한다.

0 개의 댓글:

댓글 쓰기