私はこの特定のユーザーの入力に対応すべきこの非常に単純なコードを書いています。私は何か間違っていることを知っていますが、私はそれが何であるか分かりません。単語を入力するか空白のままにすると、レスポンス "None"が返されます。事前にありがとう:)ここ は私のコードです:なぜこのコードがNone値を返すのですか?
import random
# Sentences we'll respond with if the user greeted us
GREETING_KEYWORDS = ("hello", "hi", "greetings", "sup", "whats up", "You")
GREETING_RESPONSES = ["sup buddy", "Hola", "Halo", "Hi back?"]
def check_for_greeting(sentence):
"""If any of the words in the user's input was a greeting, return a greeting response"""
if sentence is not None:
for word in sentence:
if word.lower() in GREETING_KEYWORDS:
return random.choice(GREETING_RESPONSES)
else:
pass
elif sentence is None:
return "You got to say something if you want me to do the same."
else:
return "Something is wrong..."
def chat_input():
x = input("")
print(check_for_greeting(x))
# Run
print("chat with me...")
chat_input()
これは本当に質問自体とはあまりありませんが、私は '」」.join(文)のリストに文を回し'と 'LENを使用して、文の内部グリーティング単語の存在をチェック示唆([I GREETING_KEYWORDSで私のための私の文章であれば])> 0 ' –
私は、ユーザーが入力したかわからなかった場合、彼らは入力「こんにちは」または「さようなら」の場合。 "GREETING KEYWORDS"のリストに一致するものがない場合、別のリストを作成してループする必要がありますか?ありがとう、あなたのフィードバックは便利です。 –