在 Python 中轉換字串為雙精度數
Muhammad Waiz Khan
2023年1月30日
2021年2月28日
在本教程中,我們將講述在 Python 中把一個字串轉換為精度相當於雙倍型別的數值變數的各種方法。與 C、C++ 和 Java 等其他程式語言不同,Python 沒有任何雙型別的變數。但是 Python 中的 float 型別與其他程式語言中的 double
型別具有相同的精度。
我們也可以將儲存為字串的數字或浮點數轉換為 Python 十進位制型別。十進位制型別可以根據問題的需要有多少精度,並儲存精確的數值,這與浮點型別不同。浮點數型別將數值儲存為二進位制,不能精確地表示在二進位制系統中沒有精確表示的數值,如 3.3
或 3.14
等。
在 Python 中使用 float()
函式將字串轉換為雙精度型
float()
函式接受一個數字或字串作為輸入,並返回浮點數或浮點型別作為輸出。
要將字串轉換為浮點數,我們可以將字串傳遞給 float()
函式。下面的示例程式碼演示瞭如何使用 float()
方法將一個字串轉換為浮點數(雙精度數)。
string = '1974.6323'
myfloat = float(string)
print(myfloat)
輸出:
1974.6323
在 Python 中使用 decimal.Decimal()
方法將一個字串轉換為雙精度型
decimal
模組的 decimal.Decimal()
構造方法將一個數值作為輸入,並將其轉換為十進位制型別,它可以準確地儲存和表示所有的數值,並且可以有任意的精度。
我們可以將需要轉換成雙精度數字的字串傳遞給 Decimal()
方法,得到一個十進位制型別的變數。下面的程式碼示例演示瞭如何在 Python 中使用 Decimal()
方法將一個字串轉換為一個雙精度數。
from decimal import Decimal
string = '1974.6323'
myfloat = Decimal(string)
print(myfloat)
輸出:
1974.6323