上級 › 0や空文字列を「値が無い」と誤判定してしまう › パターン2
0や空文字列を「値が無い」と誤判定してしまう
0、空文字列、空リストはすべてfalsyですが、「値が渡されていない」こととは意味が違います。
1 def get_username(name=None): 2 if ________________: ^ 3 return name 4 return "guest" 5 6 print(repr(get_username("")))
出力: 'guest'期待: '' (エラーにはなりません)
空欄を埋めて実行を通す
空文字列は「値が渡された」ことに変わりありません。「値が無い」かどうかの判定にはis not Noneを使い、値そのものの真偽値と混同しないようにします。
次の問題