Python

Python SyntaxError: Non-ASCII character '\xed' 오류 해결방법

juyeong.lee 2021. 1. 28. 03:02
반응형

Mac에서 python2와 python3을 구분해서(?) 사용했는데 최근에 좀 불편해져서 alias 설정을 했었다.

그런데 Atom 에디터에서 script 패키지로 python 파일을 실행할 때(cmd + i) 오류가 발생해서 찾아보았다.

 

해당 오류는 Python2에서 발생하는 오류로, ASCII 인코딩을 사용하기 때문에 발생한다.

많은 포스팅에서 해결방법으로 파일 상단에

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

을 추가하라는 해결방법이 많았다.

그런데 매번 이걸 추가하기보다는 기본 인코딩이 utf-8인 Python3을 쓰는 게 낫지 않겠나? 라는 생각이 들어서 조금 더 찾아봤다.

참고로 script 패키지는 v3.29.3을 사용중이다.

 

 

1. script 패키지 설정 들어가기 👉🏻 View Code

Atom 새 창으로 패키지 폴더가 열린다.

 

2. lib/grammars/python.coffee 파일 수정

'Selection Based'와 'File Based' 부분에서 command를 'python'이 아닌 'python3'으로 수정해준 후 파일을 저장한다.

exports.Python =
  'Selection Based':
    command: 'python3'
    args: (context) ->
      code = context.getCode()
      tmpFile = GrammarUtils.createTempFileWithCode(code)
      return ['-u', tmpFile]

  'File Based':
    command: 'python3'
    args: ({filepath}) -> ['-u', filepath]

 

3. Atom 종료 후 재시작

python3으로 잘 실행되는 것을 확인할 수 있다.

.zshrc에 alias 설정을 해 두어서 'python'이어도 괜찮을 줄 알았는데 script 패키지에서 실행하는 건 또 다른 것 같다.

반응형