組み込み開発のためのPython · レッスン 194 / 220
文字列と読みやすい表示
f文字列、文字コード、空白除去を使い、測定結果を読みやすく整えます。
シリアルログやコマンド出力を読むとき、文字列の空白や文字コードが原因で誤解が起きます。表示専用の整形と、機械処理するデータの検証を分けて扱います。
値を文字列へ埋め込む
f文字列は値を文章に差し込む簡潔な方法です。小数点以下の桁数や列幅も指定できますが、表示を整える操作と測定値そのものの丸めは別です。制御コマンドの組み立てに表示用の丸めを流用すると、機器へ誤った値を送ることがあります。
受信テキストの前提を明確にする
通信から得たバイト列は、文字コードと行終端を確認してからデコードします。`.strip()`は前後の空白や改行を除去できますが、データの一部として意味がある空白まで削らないよう適用箇所を選びます。文字列を数値に変換するときは失敗を想定し、エラーを呼び出し元へ伝えます。
コード例
手元のPython環境に貼り付ける前に、使用しているPythonの版と対象ライブラリの対応を確認してください。
raw = " TEMP,23.75\r\n"
record = raw.strip()
name, value_text = record.split(",", maxsplit=1)
temperature = float(value_text)
print(f"{name}: {temperature:6.2f} °C")手を動かす課題
異なる行終端や余分な列を持つ入力を用意し、期待する形式以外のデータを検出する処理を考えましょう。