Python 将一个字符串中的多个值转换为浮点值

Python 将一个字符串中的多个值转换为浮点值,python,arrays,string,floating-point,data-conversion,Python,Arrays,String,Floating Point,Data Conversion,我有一个这样的字符串-99.00-99.00-99.00 99.00 9.00-99.00,我想将字符串中的所有数字转换为浮点值,然后将它们附加到数组中,我该如何实现? 值99.00和9.00之间有3个空格分隔 如果我知道如何一个接一个地转换值,我就可以自己做附加部分 您可以使用拆分和映射方法 a = '-99.00 -99.00 99.00 9.00 -99.00' print map(float, a.split(" ")) 结果: [-99.0, -99.0, 99.0, 9.0,

我有一个这样的字符串
-99.00-99.00-99.00 99.00 9.00-99.00
,我想将字符串中的所有数字转换为浮点值,然后将它们附加到数组中,我该如何实现? 值99.00和9.00之间有3个空格分隔


如果我知道如何一个接一个地转换值,我就可以自己做附加部分

您可以使用拆分和映射方法

a =  '-99.00 -99.00 99.00 9.00 -99.00' 
print map(float, a.split(" "))
结果:

[-99.0, -99.0, 99.0, 9.0, -99.0]

可以使用拆分和映射方法

a =  '-99.00 -99.00 99.00 9.00 -99.00' 
print map(float, a.split(" "))
结果:

[-99.0, -99.0, 99.0, 9.0, -99.0]

一种类似python的方法是使用列表理解和
split

my_string = '-99.00 -99.00 99.00 9.00 -99.00'
arr = [float(x) for x in my_string.split(' ')]
print(arr)
输出:

[-99.0, -99.0, 99.0, 9.0, -99.0]

一种类似python的方法是使用列表理解和
split

my_string = '-99.00 -99.00 99.00 9.00 -99.00'
arr = [float(x) for x in my_string.split(' ')]
print(arr)
输出:

[-99.0, -99.0, 99.0, 9.0, -99.0]

在py3上使用
map
可能更有效,具体取决于输入字符串和海报';它的用法。这是因为
map
变成了一个惰性生成器,而不是提前生成整个列表。允许的字符串拆分不能做到这一点。在py3上使用
map
可能更有效,具体取决于输入字符串和海报';它的用法。这是因为
map
变成了一个惰性生成器,而不是提前生成整个列表。就算是字符串拆分也不能做到这一点。