2014-01-15 4 views
10

파이썬 응용 프로그램에서 .xlsx 파일에 약 1000 개의 행을 쓰려고합니다. 데이터는 기본적으로 정수와 문자열의 조합입니다. wbook.close() 명령을 실행하는 동안 간헐적 인 오류가 발생합니다. 오류는 다음과 같습니다.xlsxwriter를 사용하여 .xlsx 파일을 쓰는 중 UnicodeDecodeError 오류가 발생했습니다.

UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 15: 
        ordinal not in range(128) 

내 데이터에는 유니 코드가 없습니다. 왜 왜 디코더가 전혀 사용되고 있는지 궁금합니다. 누군가가이 문제를 발견 했습니까?

답변

14

0xc3은 "À"입니다. 따라서 인코딩을 변경해야합니다. decode() 메소드를 사용하십시오.

string.decode('utf-8') 

또한 필요에 따라 당신이 있지만 인코딩을 방해하고 다른 일을 중단하지 않을 것이 확실한 경우에만, 스크립트의 시작 부분에

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

를 추가 할 수 있습니다 사용합니다.

+0

그것은했다. 감사 :). –

관련 문제