Python:如何将一个字符串转换为浮点数?
发布时间:2023-06-17 13:00:08
Python是一种高级编程语言,它支持类型的自动转换,包括字符串(str)和浮点数(float)。Python提供了多种转换方式,可以将字符串转换为浮点数。
1.使用float函数
float函数将字符串转换为浮点数。float()函数接受一个参数,即要转换的字符串。它将返回转换后的浮点数。
例如:
string = "3.1415926535" float_num = float(string) print(float_num)
输出结果为:
3.1415926535
2.使用eval函数
eval()函数将一个字符串解析成Python表达式并返回结果。它可以将字符串转换为任何基本数据类型,包括浮点数。
例如:
string = "3.1415926535" float_num = eval(string) print(float_num)
输出结果为:
3.1415926535
3.使用ast.literal_eval函数
ast.literal_eval()函数将字符串解析为Python字面量表达式并返回它的值。它支持转换字符串到各种内置类型,其中包括浮点数。
与eval()相比,ast.literal_eval() 更加安全,因为它不会评估表达式中的任何Python代码。
例如:
import ast string = "3.1415926535" float_num = ast.literal_eval(string) print(float_num)
输出结果为:
3.1415926535
4.使用numpy库函数
Numpy是一个Python库,提供了各种科学计算和操作数组的功能。它包含一个名为numpy.float64()的函数,可以将字符串转换为浮点数。
例如:
import numpy as np string = "3.1415926535" float_num = np.float64(string) print(float_num)
输出结果为:
3.1415926535
总结:
Python提供了多种方式,可以将字符串转换为浮点数。使用float()函数或eval()函数是最简单的方式。如果要更加严格地控制转换的过程,可以使用ast.literal_eval()函数。另外,如果您使用的是Numpy库,则可以使用其内置的函数numpy.float64()。
