Python float() 関数

Python3 内置函数Python3 組み込み関数


float()は、Pythonで他の型のデータを浮動小数点数(小数)に変換するための組み込み関数です。

浮動小数点数は科学計算、データ分析、グラフィックス処理などの場面で非常に重要です。float()この関数を使うと、整数や文字列などを浮動小数点数型に変換できます。

単語の意味: float「浮動小数点」を意味し、コンピュータで小数を表す一つの方法です。


基本構文とパラメータ

float()は組み込み関数であり、直接呼び出すことができます。

構文形式

float(x)

パラメータの説明

  • パラメータ x:
    • 型:整数、文字列、または浮動小数点数に変換可能なその他のオブジェクト
    • 説明:浮動小数点数に変換する値。一般的には数値文字列または整数です。

関数の説明

  • 戻り値:浮動小数点数オブジェクトを返します。
  • 特別な場合:
    • float()引数なしの場合は0.0を返します
    • 整数を浮動小数点数に変換すると、小数部分は.0になります
    • 文字列"inf"または"infinity"は無限大を表します
    • 文字列"nan"は非数(Not a Number)を表します

例

一連の例を通して、float()の使い方を理解しましょう。

例1:基本的な使い方 - 数値の変換

例

# 整数から変換
print(float(10))      # 出力: 10.0
print(float(-5))      # 出力: -5.0

# 文字列から変換
print(float("3.14"))  # 出力: 3.14
print(float("  2.5  "))  # 出力: 2.5(空白は自動的に除去されます)

# ブール値から変換
print(float(True))    # 出力: 1.0
print(float(False))   # 出力: 0.0

# 引数なし
print(float())        # 出力: 0.0

実行結果の予想:

10.0
-5.0
3.14
2.5
1.0
0.0
0.0

コードの解説:

  1. 整数を浮動小数点数に変換すると、自動的に.0の小数部分が追加されます。
  2. 文字列変換では、先頭と末尾の空白文字が自動的に除去されます。
  3. ブール値Trueは1.0に変換され、Falseは0.0に変換されます。

例2:特殊な値 - 無限大とNaN

Pythonの浮動小数点数は、無限大とNaNの表現をサポートしています。

例

# 無限大
print(float("inf"))      # 出力: inf
print(float("infinity"))  # 出力: infinity
print(float("-inf"))     # 出力: -inf

# NaN (Not a Number)
print(float("nan"))      # 出力: nan

# 数学モジュールを使用して検証
import math
print(math.isinf(float("inf")))   # 出力: True
print(math.isnan(float("nan")))   # 出力: True

実行結果の予想:

inf
infinity
-inf
nan
True
True

コードの解説:

  • "inf"または"infinity"は正の無限大を表し、"-inf"は負の無限大を表します。
  • "nan"は非数を表し、未定義または表現できない結果を示すためによく使用されます。
  • 使用できるのは、math.isinf()とmath.isnan()これらの特殊な値を検出するためです。

例3:数学計算での応用

例

# 整数の除算結果は自動的に浮動小数点数に変換されます
result = 7 / 2
print(result)        # 出力: 3.5
print(type(result))  # 出力: <class 'float'>

# 浮動小数点数に強制変換して正確な計算を行う
a = 10
b = float(a) / 3
print(b)             # 出力: 3.3333333333333335

# ユーザーが入力した小数を処理する
user_input = "3.14159"
pi = float(user_input)
print(f"円周率: {pi}")  # 出力: 円周率: 3.14159

# 浮動小数点数の精度の問題
print(0.1 + 0.2)  # 出力: 0.30000000000000004

実行結果の予想:

3.5
<class 'float'>
3.3333333333333335
圆周率: 3.14159
0.30000000000000004

この例は、数学計算における浮動小数点数の応用と、浮動小数点数の精度問題の存在を示しています。


Python3 内置函数Python3 組み込み関数


その他の拡張