if not(偽の場合に処理される)がどうしても理解できません。
下記コードの if not response : は、bot_dict{}に登録されていない挨拶が
入力された場合、又は、なにも入力されなかった場合の処理ですが、一体
どいうことなのでしょう。
なにも入力されなかった場合には、response = ''となり、Trueになるのではないでしょうか?
・・・質問も意味不明な状態となり申し訳ないのですが、if notについて
解説いただければと思います。
python
1bot_dict = { 2 'おはよう' : 'オハヨウゴザイマス', 3 'こんにちは' : 'コンニチハ', 4 'こんばんは' : 'コンバンハ', 5} 6 7while True : 8 cmd = input('pybot >> ') 9 response = '' 10 for msg in bot_dict : 11 if msg in cmd : 12 response = bot_dict[msg] 13 print(response) 14 break 15 16 if not response : #ここが分かりません。 17 response = '意味不明です' 18 print(response) 19
空白のため、if文の条件に合致しない。違う言い方をすると、空白(空文字列)はFalseと
なりprint文は実行されない。↓
name = '' if name : print('名前は', name, 'です')
空文字列の場合、if文の条件に合致する。
なぜでしょう?not nameだから、空文字列では無いということになり、print文は実行されないのではないでしょうか?↓
name = '' if not name : print('名前が設定されていません')

回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2019/07/09 13:53