在 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