始める無料で始める

ELIZA III: 代名詞

応答を文法的に自然にするには、抽出したフレーズを一人称と二人称の間で変換する必要があります。英語では動詞の活用が比較的シンプルで、"me" と "you"、"my" と "your" を入れ替えるだけで、ほとんどの場合うまくいきます。

この演習では、re.sub() を使って文字列内の "me" と "my" を "you" と "your" に(またその逆も)置換する replace_pronouns() 関数を定義しましょう。

この演習はコースの一部です

Python でチャットボットを作る

コースを見る

演習の手順

  • message'me' が含まれている場合は、re.sub() を使って 'you' に置換します。
  • message'my' が含まれている場合は、'your' に置換します。
  • message'your' が含まれている場合は、'my' に置換します。
  • message'you' が含まれている場合は、'me' に置換します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Define replace_pronouns()
def replace_pronouns(message):

    message = message.lower()
    if 'me' in message:
        # Replace 'me' with 'you'
        return ____
    if 'my' in message:
        # Replace 'my' with 'your'
        return ____
    if 'your' in message:
        # Replace 'your' with 'my'
        return ____
    if 'you' in message:
        # Replace 'you' with 'me'
        return ____

    return message

print(replace_pronouns("my last birthday"))
print(replace_pronouns("when you went to Florida"))
print(replace_pronouns("I had my own castle"))
コードを編集して実行