言語云々ということではなく、プログラムの動作について
どうしても理解できない事が以下2つあります。(一応、pythonで書いています)
下記コードは、単純に挨拶をするボットですが、2点不明点があります。
1点目 全体的なプログラムの動作について
下記コードを実行し、「おはよう」と入力すると、オハヨウゴザイマスと返してくれます。
しかし、次に、何も入力せすにEnterを押すと、オハヨウゴザイマスが表示されてしまいます。
そして、さらに何も入力せずにEnterを押すと、また、オハヨゴザイマスが表示されてしまいます。
本来、何も入力されていない場合は、if not response :で'あいさつをしてください'を表示させ
プログラムを終了するようにしたいと思っております。
2点目
cmd = input('pybot >> ')で何も入力されていなかった場合、
if not response :で挨拶を入力しているか判定を行っていますが、下記コードの場合、
if response = '' :ということになるのでしょうか? not responseだと、空白ではないということになってしまうのではないでしょうか?
コード↓
python
1bot_dict = { 2 'おはよう' : 'オハヨウゴザイマス', 3 'こんにちは' : 'コンニチハ', 4 'こんばんは' : 'コンバンハ', 5} 6 7while True : 8 cmd = input('pybot >> ') 9 response = '' 10 for msg in bot_dict : 11 if cmd in msg : 12 response = bot_dict[msg] 13 print(response) 14 break 15 if not response : 16 print('あいさつをしてください') 17 break

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2019/07/06 13:23
2019/07/06 13:29 編集