例如,我尝试将浮点字符串转换为间距均匀的字符串
floating_num = ['6.7 6.8 6.9 7.0 7.1']
第一步:使用string
方法string.split()
floating_num = floating_num[0].split(' ')
得到了含有5个元素的list
的string
float
floating_num = ['6.7', '6.8', '6.9', '7.0', '7.1']
步骤2:然后使用列表理解将每个元素转换为float
floating_num = [float(x) for x in floating_num]
然后得到一个list
的float
和5个float类型元素
floating_num = [6.7, 6.8, 6.9, 7.0, 7.1]
我的问题是:
我试图转换floating_num = ['6.7 6.8 6.9 7.0 7.1']
,但是每个浮点字符串之间的间距是非同调的。例如,6.7和6.8之间有2个空格,6.8和6.9之间有1个空格,6.9之间有3个空格,等等。
如何将其转换为float
的list
?
我试过第一步,得到了这个结果
['6.7', '', '6.8', '6.9', '', '', '7.0', '', '7.1']
因为我在split()
方法中使用的分隔符只有1个间距' '
,所以我得到了值为''
的元素。
当我把它转换成浮点数时,我得到了一个错误:
ValueError: could not convert string to float.
字符串方法split()
可以应用于此吗?或者还有其他方法
在没有参数的情况下使用
.split
可以处理多个空格给予
选项1:使用regex拆分
选项2:不带正则表达式:仅将值转换为非空的浮点值
过滤一下:
相关问题 更多 >
编程相关推荐