組み込み開発のためのPython · レッスン 196 / 220
条件分岐と入力範囲の検証
if文で状態を判定し、境界条件や異常値を明確に処理します。
機器制御や測定スクリプトでは、境界値を誤判定すると結果が変わります。条件分岐の順序と、正常・警告・エラーの境界を読みやすく記述します。
境界を仕様と同じ形で書く
範囲の端点を含むかどうかを、`<=`と`<`で正確に表します。相互に重なる条件は順序によって結果が変わるため、異常・例外条件を先に判定し、その後で通常範囲を判定すると意図が伝わりやすくなります。
真偽値と欠損値を混同しない
空文字や0を「値なし」と同じように判定すると、有効なゼロ測定値を誤って無視することがあります。値の有無を調べるのか、数値がゼロか調べるのかを分けて書きます。外部入力の文字列は、比較の前に形式と範囲を検証します。
コード例
手元のPython環境に貼り付ける前に、使用しているPythonの版と対象ライブラリの対応を確認してください。
voltage_mv = 3300
minimum_mv = 3000
maximum_mv = 3600
if not minimum_mv <= voltage_mv <= maximum_mv:
state = "範囲外"
elif voltage_mv == maximum_mv:
state = "上限値"
else:
state = "正常"
print(state)手を動かす課題
有効範囲の下限・上限・範囲外の値をそれぞれ与え、3ケースの結果を確認しましょう。