私が作成しようとしているこのプログラムでは、式 (「I=23mm」または「H=4V」など) があり、それから 23 (または 4) を抽出しようとしています。それを整数にします。
私が遭遇し続ける問題は、数字を取り出そうとしている式が 1 つの単語であるため、split() などを使用できないことです。
私が見たがうまくいかなかった一例は -
I="I=2.7A"
[int(s) for s in I.split() if s.isdigit()]
数字がスペースで区切られているだけなので、これは機能しません。int078vert という単語に数値が含まれていた場合、それは抽出されません。また、私のものには区切るスペースがありません。
こんな感じのものを作ってみましたが、
re.findall("\d+.\d+", "Amps= 1.4 I")
しかし、渡される番号が常に2桁であるとは限らないため、どちらも機能しませんでした。それは 5 のようなものかもしれませんし、13.6 のようなものかもしれません。
次のような文字列を渡す場合、どのコードを書く必要がありますか?
I="I=2.4A"
また
I="A=3V"
この文字列から数字だけを抽出できるようにするには?(そしてそれに対して操作を行います)?区切ることができるスペースやその他の定数文字はありません。