"Python2 UTF-8 한글 사용"의 두 판 사이의 차이

잔글 (로봇: 자동으로 텍스트 교체 (-<source lang='dos'> +<source lang='cli'>))
6번째 줄: 6번째 줄:
==문제상황==
==문제상황==
*python 소스 코드에 UTF-8 한글이 포함될 경우 오류 발생
*python 소스 코드에 UTF-8 한글이 포함될 경우 오류 발생
<source lang='dos'>
<source lang='cli'>
[root@jmnote ~]# cat hello.py  
[root@jmnote ~]# cat hello.py  
print "안녕"
print "안녕"
16번째 줄: 16번째 줄:
==정상 예시==
==정상 예시==
*파일 맨첫줄에 <code># -*- coding: utf-8 -*-</code> 추가
*파일 맨첫줄에 <code># -*- coding: utf-8 -*-</code> 추가
<source lang='dos'>
<source lang='cli'>
[root@jmnote ~]# cat hello2.py  
[root@jmnote ~]# cat hello2.py  
# -*- coding: utf-8 -*-
# -*- coding: utf-8 -*-

2015년 2월 6일 (금) 02:56 판

Python UTF-8 사용
Python 한글 사용
SyntaxError: Non-ASCII character '\xec'

1 문제상황

  • python 소스 코드에 UTF-8 한글이 포함될 경우 오류 발생
[root@jmnote ~]# cat hello.py 
print "안녕"
[root@jmnote ~]# python hello.py
  File "hello.py", line 1
SyntaxError: Non-ASCII character '\xec' in file hello.py on line 1, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

2 정상 예시

  • 파일 맨첫줄에 # -*- coding: utf-8 -*- 추가
[root@jmnote ~]# cat hello2.py 
# -*- coding: utf-8 -*-
print "안녕"
[root@jmnote ~]# python hello2.py
안녕

3 같이 보기