[英]How do you convert a list of strings to a list of floats using Python?
If I have a list of strings: 如果我有一个字符串列表:
[' 3.2 4.5 7.8 9.2 4.3 4.7 5.2',
' 3.1 4.1 1.3 8.2 4.1 3.2 3.1',
' 3.1 4.2 5.7 3.2 4.1 3.0 1.9']
How can I convert it to a list of floats so my result looks something like this: 如何将其转换为浮点数列表,因此我的结果如下所示:
[[3.2, 4.5, 7.8, 9.3, 4.3, 4.7, 5.2],
[3.1, 4.1, 1.3, 8.2, 4.1, 3.2, 3.1],
[3.1, 4.2, 5.7, 3.2, 4.1, 3.0, 1.9]]
Use 采用
l = [' 3.2 4.5 7.8 9.2 4.3 4.7 5.2',
' 3.1 4.1 1.3 8.2 4.1 3.2 3.1',
' 3.1 4.2 5.7 3.2 4.1 3.0 1.9']
print( [map(float, i.strip().split()) for i in l] )
Output: 输出:
[[3.2, 4.5, 7.8, 9.2, 4.3, 4.7, 5.2], [3.1, 4.1, 1.3, 8.2, 4.1, 3.2, 3.1], [3.1, 4.2, 5.7, 3.2, 4.1, 3.0, 1.9]]
str.split()
to split element by space str.split()
用于按空间拆分元素 map(float, 'YOURLIST')
to apply float on all elements. map(float, 'YOURLIST')
将float应用于所有元素。 You can use below code: 您可以使用以下代码:
numbers = [' 3.2 4.5 7.8 9.2 4.3 4.7 5.2',
' 3.1 4.1 1.3 8.2 4.1 3.2 3.1',
' 3.1 4.2 5.7 3.2 4.1 3.0 1.9']
print([[float(number) for number in number_list.split()] for number_list in numbers])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.