피 켄탕 트는 외국 문자를 엉망으로 만들고 철자 검사가 실패합니다. 내 여자 친구는 독일어이므로 "häßlich"라는 단어는 진짜 독일어 단어이고 다른 맞춤법 검사 서비스를 사용하여 단어를 검사했습니다.피언 첸트가 외국어를 엉망으로 만듭니다.
스크립트 파일 인코딩은 ANSI를 UTF-8로 사용합니다. 나는 다른 종류의 문자 인코딩으로 그 단어를 인코딩하고 디코딩하려고 시도했다.
#!/usr/bin/python
# -*- coding: utf-8 -*-
# Python bindings for the enchant spellcheck
import enchant
# Enchant dictionary
enchantdict = enchant.Dict("de_DE")
# Define german word for "ugly"
word = "häßlich"
# Print the original word and the spellchecked version of it
print word, "=", enchantdict.check(word)
그리고 출력은 다음과 같다 : h├ñ├ƒlich = 거짓 또한
, 나는 일반 ANSI로 스크립트 인코딩을 변경하는 경우,이 내가 무엇을 얻을 수 있습니다 :
hõ¯lich = ** (python.exe:1096): CRITICAL **: enchant_dict_check: assertion `g_utf8_validate(word, len, NULL)' failed
Traceback (most recent call last):
File "C:\Temp\koe.py", line 14, in <module>
print word, "=", enchantdict.check(word)
File "C:\Python27\lib\site-packages\enchant\__init__.py", line 577, in check
self._raise_error()
File "C:\Python27\lib\site-packages\enchant\__init__.py", line 551, in _raise_
error
raise eclass(default)
enchant.errors.Error: Unspecified Error
내가 사용하고 : pyenchant-1.6.5.win32.exe 파이썬 2.7.3.msi 윈도우 7
... 그리고 당신은 더 나은 맞춤법 검사기에있는 경우 마음, 제발 말해줘, 나는 그것을 시험해 볼 것이다 :
? ASCII를 의미한다면 그것은 불가능합니다. ASCII 형식으로 "häßlich"를 입력 할 수 없습니다. 당신이 다른 것을 의미한다면 ... 글쎄, 그것은 당신이 의미하는 바에 달려 있습니다. 한편,'print name'은 반드시 올바른 일을하지는 않습니다. 그것은 여러분의 터미널이 동일한 인코딩과 파이썬의 sys 기본 인코딩으로 설정되어 있는지에 달려 있습니다 (Windows에서 일반적인 문제를 해결하기위한 몇 가지 해킹이 있지만). 그래도 Eric MSFT가 말했듯이 유니 코드 문자열을 사용하지 않는 한 아무 것도 할 수 없다고합니다. – abarnert