はじめに
計測器をPC制御する際、測定値を取得した場合、返り値の多くは ','
で区切られた文字列になる。
その文字列を区切る方法を考えてみる。
なお、想定する返り値は以下で考えてみよう。
result = '3.14E-3, -128.96'
ちなみにこれは、ロックインアンプの測定値を返したものになる。
#スライスを使う
R = result[0:7]
Th = result[9:16]
print('R:{}, Th:{}'.format(R, Th))
# R:3.14E-3, Th:-128.96
スライスで文字列を分解し、出力すると可能。
ただこのとき、計測器によっては誤動作?により返り値にスペースが入っていたりする。
そんな時、プログラムは止まってしまう。
健気なPCである
※ スライスについて→こちら
#split()関数を使う
result_list = result.split(',')
R = result_list[0]
Th = result_list[1]
print('R:{}, Th:{}'.format(R, Th))
# R:3.14E-3, Th:-128.96
' 3.14E-3, -128.96'
のような返り値に対しても、これならカンマでちゃんと区切ってくれる。
#最後に
今回は、計測器によく見られる返り値の処理の方法について書いてみた。
正直どちらの方法でもOKで、好みによると思う。
ただ、ときどき誤動作を起こしてスペースキーが入ってしまうことや、計測器特有のヘッダーがついてたりするため、使い分け、または合体させて使うなど、柔軟な対応が必要だと思う。