0

重複の可能性:
Python での OR の動作:

私はプログラミングの初心者で、最初の言語として Python を選びました。

print "start the conversation"
conversation = raw_input()

if conversation == "Hi" or "hi" or "Hello" or "hello":
    print "Hey there!"

elif conversation == "How are you?" or "how are you?":
    print "I'm good and you?"
else:
    print "No one starts a conversation like this."

しかし、プログラムを実行するたびに、「こんにちは」と入力すると正常に動作し、「こんにちは!」と返信されます。しかし、入力として次のように入力するたびに、「お元気ですか?」それでも「やあ!」と出力されます。「I'm good and you?」と表示させたい 「こんにちは!」の代わりに また。初心者なので簡単にお願いします。

4

2 に答える 2

1

if conversation == "Hi" or "hi" or "Hello" or "hello":

読む必要があります

if conversation in ("Hi", "hi", "Hello", "hello"):

同様にelif

あなたが今持っているコードは構文的に有効ですが、あなたが思っていることをしません(基本的には常に評価されTrueます)。

于 2013-01-19T17:30:24.600 に答える
1

最初の条件は常にTrueです。次を使用する必要があります。

if conversation == "Hi" or conversation == "hi" or conversation == "Hello" or conversation == "hello":

また

if conversation in ("Hi", "hi", "Hello", "hello"):
于 2013-01-19T17:32:37.010 に答える