14 개의 다른 언어를 포함하는 Python (ver2.6.6)에 UTF-8로 저장된 파일을로드하려고합니다. 파이썬 codecs
모듈을 사용하여 txt 파일을 디코딩합니다.Python 코덱 모듈
import codecs
f = open('C:/temp/list_test.txt', 'r')
for lines in f:
line=filter_str(lines.decode("utf-8")
이 모두 제대로 작동합니다. 전체 파일을 구문 분석 한 다음 14 개의 다른 언어 파일을 내보내려고합니다. 내가 이해할 수없는 문제는 내가 출력을위한 다음 코드를 사용하여 다음과 같은
입니다 :
malangout = codecs.open("C:/temp/'polish.txt",'w','utf-8','surrogateescape')
for item in lang_dic['English']:
temp = lang_dic[lang1][item]
malangout.write(temp + '\n')
malangout.close()
예 :
- 언어 : 폴란드어
- 예상 출력 : Dziennik는 을 zakłóceń
- 실제 출력 : Dziennik zak,óceƒ
u'Dziennik zak\u201a\xf3ce\u0192'
: 그대로
문자열이 저장됩니다. 모든 정보는이 시점에서 도움이 될 것입니다. 문자열로 저장됩니다
메모에서 "ASCII 파일을 메모장에 저장합니다.": ascii는 utf8의 하위 집합으로 문제가되지 않습니다. "ascii"대신 "ANSI"를 의미합니까? 'import locale '의 결과는 무엇입니까? print (locale.getpreferredencoding())'을 사용하고 계십니까? –