2016년 12월 1일 목요일

Python 코드 상에서 한글 사용하기





Python은 좀 특이한 언어이다. 들여쓰기가 그렇게 의미 있는 행동이다.
또 공백이 있고 없고가 큰 차이를 만들어내는 경우도 있다.
대표적으로 Python 코드는 기본적으로 ASCII 문자로 처리해서 해석을 한다.
따라서 소스 코드 상에서 한글을 사용하면 컴파일 단계에서 에러 발산한다.
심지어는 #로 시작하는 주석에서 한글을 사용해도 컴파일 에러 발생한다.
에러 메시지는 다음과 같은 걸 뿜는다.

SyntaxError: Non-ASCII character '\xec' in file test.py on line 16, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details


따라서 파이썬에서 한글을 사용할려면 다음의 코드를 소스 맨 첫줄에 삽입해 주어야 한다.

#-*- coding: utf-8 -*-

그런데 다음과 같이 하면 여전히 한글을 사용할수 없는 상황이 변하지 않는다.

#-*- coding : utf-8 -*-

coding과 콜론(:) 사이에 있는 공백 때문이다. 

참고로 이 글은 Python 버전 2.7에서 실행했을 때의 상황이다.
Python 버전 3에서는 이상의 문제 발생하지 않는다.

댓글 없음:

댓글 쓰기