[追記]
以下の入力のバリデーションを追記しました。
if not isinstance(x, int): raise Exception("Input must be int")
以下は単純な例ですが、
例えばこのような関数を
python
1def test(x): 2 if not isinstance(x, int): 3 raise Exception("Input must be int") 4 5 if x < 0: 6 print("x is negative") 7 elif x <= 100: 8 print("x is positive and not too large") 9 else: 10 print("x is too large")
以下のように書くのはありですか?(または、一般的に受け入れられていますか?)
python
1def test(x): 2 if not isinstance(x, int): 3 raise Exception("Input must be int") 4 5 if x < 0: 6 print("x is negative") 7 if 0 <= x <= 100: 8 print("x is positive and not too large") 9 if 100 < x: 10 print("x is too large")
このように書くことのメリット(と私が考えること)は、
- 条件が対等に見えることによる可読性の向上
考えられるデメリットとしては、
- 条件の抜け漏れ・オーバーラップなどが起こりやすくなる
- 実行時間が気持ち長くなる(可能性がある?)
これらの問題が大きく影響しない場合には取り入れられる書き方でしょうか?
回答7件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。