float

浮點數的表示方式:

  • 小數點
  • 科學記號法

小數點

0.5的個位數為0,可以省略0,直接.5。

1
2
3
n1 = 0.5
n2 = .5
print(f"n1 = {n1}, n2 = {n2}")
n1 = 0.5, n2 = 0.5

科學記號法

科學記號法可以使用e或E。

1e1 = $ 1 \times 10^{1} = 1 \times 10$

1E2 = $ 1 \times 10^{2} = 1 \times 10 \times 10$

1e3 = $ 1 \times 10^{3} = 1 \times 10 \times 10 \times 10$

1e-1 = $ 1 \times 10^{-1} = 1 \times 0.1 = 1 \times \frac{1}{10} = 1\div10$

1E-2 = $ 1 \times 10^{-2} = 1 \times 0.01 = 1 \times \frac{1}{10} \times \frac{1}{10} = 1 \times \frac{1}{100} = 1 \div 10 \div 10$

1E-3 = $ 1 \times 10^{-3} = 1 \times 0.001 = 1 \times \frac{1}{10} \times \frac{1}{10} \times \frac{1}{10} = 1 \times \frac{1}{1000} = 1 \div 10 \div 10 \div 10$

例如:

0.21e2 為 $ 0.21 \times 10^{2} = 0.21 \times 10 \times 10 = 21 $

0.21e-2 為$ 0.21 \div 10 \div 10 = 0.0021$

1
2
3
n1 = 0.21e2
n2 = .21e-2
print(f"n1 = {n1}, n2 = {n2}")
n1 = 21.0, n2 = 0.0021

浮點數最大值 最小值

打開終端機,輸入python3,

XXXX@xxxx ~ % python3
Python 3.14.3 (v3.14.3:323c59a5e34, Feb  3 2026, 11:41:37) [Clang 16.0.0 (clang-1600.0.26.6)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

再輸入 import sys 斷行,再輸入 sys.float_info,就會例出最大值與最小值

>>> import sys
>>> sys.float_info
sys.float_info(max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308, min=2.2250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15, mant_dig=53, epsilon=2.220446049250313e-16, radix=2, rounds=1)
>>> 

最大值 max=1.7976931348623157e+308
最小值 min=2.2250738585072014e-308

浮點數 近似值

計算機手動算的結果為2.7,但python執行結果並非2.7,而是接近「近似值」

1
2
n = 8.1 / 3
print(f"n = {n}")
n = 2.6999999999999997

解決近似值使用Decimal,使用前要import Decimal。

1
2
3
4
5
from decimal import Decimal
n = 8.1 / 3
print(f"n = {n}")
n2 = Decimal("8.1") / Decimal("3")
print(f"n2 = {n2}")
n = 2.6999999999999997
n2 = 2.7

results matching ""

    No results matching ""