1

基本的に、ユーザーがスペルをチェックするために単語を入力したときに一致する単語を検索できるようにしたいテキストファイルに単語の大きなリストがあります。これは私がこれまでに持っているものです。

f = open('words.txt', 'r')
wordCheck = input("please enter the word you would like to check the spelling of: ")

for line in f:
    if 'wordCheck' == line:
        print ('That is the correct spelling for '+wordCheck)
    else:
        print ( wordCheck+ " is not in our dictionary")
    break

単語を入力すると、すぐにelseステートメントが表示されます。テキストファイルを読んでさえいないと思います。代わりにwhileループを使用する必要がありますか?

while wordCheck != line in f

私はpythonが初めてで、最終的にはユーザーが単語を入力できるようにしたいのですが、スペルが間違っている場合、プログラムは一致する単語のリストを出力する必要があります(文字の75%以上が一致します)。

どんな助けでも大歓迎です

4

3 に答える 3

0

最初の行が壊れる前にループしただけだからです。

wordCheck = input("please enter the word you would like to check the spelling of: ")
with open('words.txt', 'r') as f:
    for line in f:
        if wordCheck in line.split():
            print('That is the correct spelling for '+wordCheck)
            break
    else:
        print(wordCheck + " is not in our dictionary")

here が使用されfor/elseているため、単語がどの行にも見つからない場合、else:ブロックが実行されます。

于 2013-05-31T11:48:03.837 に答える