보통 인코딩을 모르는 미지의 파일을 파이썬의 open()함수를 통하여 열 시에 위와같은 오류가 종종 발생한다.
그 이유는 파이썬은 utf-8이 기본 인코딩인데, utf-8로 해당 문서를 열려고 했더니 문제가 발생했다는 것이다.
이때는 open()함수의 encoding 파라미터를 통하여 인코딩 방식을 다른 방법으로 지정해 주면 파일이 열린다.
보통 윈도우에서 작성하거나 웹에서 긁어온 문서는 'euc-kr' 혹은 'cp949'로 대부분 해결이 된다.
가끔 해외에서 작성된 문서의 경우 'latin_1'인코딩도 종종 보인다.
즉, open("file.name", "r", encoding='euc-kr')의 식이다.
그러나 저 두가지 인코딩을 사용하였는데도 제대로 작동이 안되는 경우에는 인터넷에서 직접 인코딩 방식을 찾아 보아야 한다.
그런데 이 방식을 활용하여도, 인코딩은 저렇게 해놓고, 실제 내부에서 인코딩된 문서가 쓰인 방식이 다를 수 있다.
(가령 저 인코딩 방식으로 파일이 열리는데도 그 안에서도 파일이 깨져보이는 경우)
그때는... 답 없이 경험에 의지해서 여러 인코딩 방식을 시험해보는 수밖에 없다.
그것이 바로 위에서 말했던 latin_1, euc-kr, cp949등 이다.
더욱 많은 인코딩 방식은 파이썬의 공식 도큐멘테이션에 2/3 지점에 나와있다.
만일 해당 국가가 한국이 아니라 중국, 대만, 일본 등이면 그에 맞는 인코딩 방식을 하나하나 시험해보는 수 밖에 없다.