0
私はPythonでいくつかの文字を入力できるプログラムを作成しようとしています。プログラムはこれらの文字の可能な組み合わせをすべて調べます。次にそれを比較して、それが辞書にあるかどうかを確認します。そうであれば、最後に印刷されるリストに追加されます。私は特定のことをする方法を調べなければならなかったし、このエラーが出るまでうまくやっていた。私はこのメッセージを持ったフォーラムを見つけることができません。誰かが私を助けて、それを働かせるために何が必要なのか教えてくれますか?ここに私のコードです。enchant.errors.Error:pyendant-pythonにbytestringsを渡さないでください
import itertools
import enchant
how_many_letters=True
letters=[]
possible_words=[]
d = enchant.Dict("en_US")
print("Welcome to combination letters helper!")
print("Type the word 'stop' to quit entering letters, other wise do it one at a time.")
while how_many_letters==True:
get_letters=input("Enter the letters you have with not counting spaces:")
if get_letters=='stop':
how_many_letters=False
letters.append(get_letters)
length=len(letters)
length=length-1
del letters[length:]
print(letters)
for i in range(length):
for subset in itertools.combinations(letters, i):#Subset is the combination thing
print(subset)
check=d.check(subset)
print(check)
if check==True:
possible_words.append(check)
print(possible_words)
ありがとうございます。
私は長減算1を必要とする理由は、 "を削除しましたループを終了するように指示していたので、「停止」してください。しかし、それもあなたのコードでそれを行うように見えます。だから私はそれを取り除くことができると思う。途中で応答してくれてありがとう。 1つは、単語ではない組み合わせを与えるので、辞書のチェックが機能していないということです。私が見た葯フォーラムによれば、私はそれを正しくしたと思った。なにが問題ですか? –
先ほど見落としたストップワードを削除するのに使っているのを見て、編集しました。あなたは私に言葉の例を教えてくれますか? –
私はそれを使用しているアプリケーションのためにそれをテストし、すべての単語を含んでいませんでした。良くない。それでも彼らはすべてを通り抜けています。それは別の問題です。とにかく、辞書の言葉は、ここに例があります。 –