러시아 탭으로 구분 된 txt 파일에서 지난 몇 시간 동안 수수께끼가 생겼습니다. 다음은 그 모습입니다.파이썬 - 유니 코드 (러시아어) Txt 파일 처리
CODE AD_GROUP KEYWORD MATCH_TYPE
009966 Автостраховка автостраховка Broad
009965 Автостраховка страховкаавто Broad
009964 Автостраховка страховка автомобиля Broad
목표는 txt 파일을 구문 분석하여 각 키워드를 별도로 인쇄하는 것입니다.
f = open("struct.txt",encoding="UTF-8",errors='strict')
for line in f:
vals = line.split("\t")
print(vals[2])
f.close()
그러나 나는 다음과 같은 오류가 점점 계속 :
지금까지 내가 가진 UnicodeDecodeError
을 'UTF-8'코덱이 위치 0 바이트를 0xFF를 디코딩 할 수 없습니다 무효 시작 바이트
또한 각 목록의 길이를보기 위해 len (vals)을 수행하면 다음과 같이 표시됩니다. 4 1 4 1 아마도 분할 ("\")이 작동하지 않는다는 의미입니까?
저는 Python3.3과 Mac을 사용하고 있습니다.
마지막으로, 키릴 문자가 표시되지 않는 Mac의 명령 줄에 문제가 있다고 생각하지 않습니다. 문제가 발생하지 않고 서양 Windows 버전에서는 실패한 것 같습니다.
내가 뭘 잘못하고 있는지 알려 주시기 바랍니다.
감사합니다.
유니 코드 오류는 명령 줄의 인쇄에만 있습니다. IDLE에서 스크립트를 실행할 수 있습니다. 그런 다음 길이가 예상대로 작동하지 않는 동안 적절한 출력과 디버그를 얻을 수 있습니다. – poke
인쇄 오류가 발생합니다. 터미널 설정을 수정해야합니다. http://wiki.python.org/moin/PrintFails –
을 참조하십시오. 빠른 답장을 보내 주셔서 감사합니다. 그러나 문제는 아닙니다 (내 설명에서 언급 한 것처럼). 난 그냥 IDLE 맥에서 실행하고있어 : UnicodeDecodeError : 'utf - 8'코덱은 위치 0에서 바이트 0xff를 디코딩 할 수 없습니다 : 유효하지 않은 시작 바이트 – Aivoric