PYTHON3 SyntaxError: (unicode error) 'utf-8' codec can't decode byte 0xc0 in position 7: invalid start byte 한글 인식
By 때찌때찌맴매 - 3월 21, 2018
** PYTHON3 SyntaxError: (unicode error) 'utf-8' codec can't decode byte 0xc0 in position 7: invalid start byte 한글 인식
* python2 에서 한글 내용의 파일을 실행시 발행 에러.
PYTHON 2.X [ 장애 ] [root@localhost 02:57:26:/home/python]# python2 te.py File "te.py", line 1 SyntaxError: Non-ASCII character '\xed' in file testsetst.py on line 1, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details [ 해결 ] # -*- coding: utf-8 -*- 추가 * python3에서는 해당 인코딩이 기본으로 적용되어 있음. [root@localhost 03:03:07:/home/python]# cat te.py # -*- coding: utf-8 -*- print ("테스트") [ 결과 ] [root@skhkil 03:03:10:/home/python]# python2 te.py 테스트
* python3 에서 한글 내용의 파일을 실행시 발생 에러.
PYTHON 3.X [ 장애 1.] [root@localhost 02:35:46:/home/python]# python te.py File te.py, line 4 SyntaxError: Non-UTF-8 code starting with '0xc0' in file te.py on lin e 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for deta ils [ 해결 ] python3.x을 사용하는데 해당 에러는 python2.x 에서 실행되어 해당 에러가 발행 할 수 있음. 실행시 python xxxx.py 가 아닌 python3 xxxx.py 로 실행. (버전 확인으로 python3.x확인) [ 장애 2.] [root@localhost 02:35:46:/home/python]# python3 te.py File "te.py", line 4 SyntaxError: (unicode error) 'utf-8' codec can't decode byte 0xc0 in position 7: invalid start byte [ 해결 ] 1. 시스템 및 접속 프로그램 언어 utf-8 변경 리눅스 기준으로 locale LANG=ko_KR.UTF-8 <= 변경 프로그램 putty, pac 등 접속 언어 utf-8 2. 파이썬 파일 언어셋 확인 위 내용으로 접근하여 파일 생성 및 저장 후 코딩상태 확인시 :set encoding 입력 encoding=utf-8 으로 확인 될 것임. 그렇지 않다면 파일을 인코딩 해야 되는데 콘솔에서 해버리면 내부 한글들이 깨지기 때문에 , 외부 프로그램등을 사용하여 저장하는게 편할 듯 합니다. pycharm, notepad++ 등으로 인코딩 저장을 utf-8로 저장 후 서버에서 돌리면 정상적으로 확인 가능. [ 결과 ] [root@localhost 03:56:51:/home/python]# python -V Python 3.6.4 [root@localhost 03:58:09:/home/python]# cat te.py print ("테스트") [root@localhost 03:56:54:/home/python]# python te.py 테스트
0 개의 댓글