Pythonでは、データ型の変換が頻繁に行われます。特に、文字列(str)と浮動小数点数(float)の間での変換は、データ分析や機械学習のコードでよく見られます。
strからfloatへの変換
Pythonで文字列を浮動小数点数に変換するには、float()関数を使用します。この関数は、内部的に指定されたオブジェクトの__float__()関数を呼び出します。
s = "3.14"
f = float(s)
print(f)  # 3.14
print(type(f))  # <class 'float'>
このコードでは、文字列sをfloat()関数に渡して浮動小数点数に変換し、その結果をfに格納しています。
floatからstrへの変換
浮動小数点数を文字列に変換するには、str()関数を使用します。
f = 3.14
s = str(f)
print(s)  # "3.14"
print(type(s))  # <class 'str'>
このコードでは、浮動小数点数fをstr()関数に渡して文字列に変換し、その結果をsに格納しています。
注意点
str()関数で浮動小数点数を文字列に変換すると、桁数が揃わないことがあります。例えば、str(0.1 + 0.2)は"0.30000000000000004"となり、期待した結果"0.3"とは異なります。これは、浮動小数点数の精度に関連した問題で、Pythonだけでなく他の多くのプログラミング言語でも発生します。
以上、Pythonにおけるstrとfloatの変換について解説しました。これらの知識は、Pythonプログラミングの基本的な部分であり、データの前処理や変換作業で頻繁に使用されます。適切なデータ型を理解し、適切に変換することで、より効率的で正確なコードを書くことができます。