我有一个类型为“string”的数值列表。一些在此列表中的元素有一个以上的值,例如:将列表内的字符串转换为浮点数
AF=['0.056', '0.024, 0.0235', '0.724', '0.932, 0.226, 0.634']
的另一件事是,一些元素可能是.
有了这样说,我一直尝试此列表中的元素转换为浮动(同时还节约元组,如果有一个以上的值),但我不断收到以下错误:
ValueError: could not convert string to float: .
我试过的东西很多解决这个问题,用最新的一个是:
for x in AF:
if "," in x: #if there are multiple values for one AF
elements= x.split(",")
for k in elements: #each element of the sub-list
if k != '.':
k= map(float, k)
print(k) #check to see if there are still "."
else:
pass
但是当我运行的是,我仍然得到同样的错误。所以我从上面的循环中打印出k
,果然,列表中仍然有.
,尽管我声明不要在字符串到浮点转换中包含那些。
这是我想要的输出: AF=[0.056, [0.024, 0.0235], 0.724, [0.932, 0.226, 0.634]]
你能告诉你的期望的输出? – CoryKramer
@CoryKramer:增加了它 – claudiadast
所以独立的项目'.'应该被删除? – RomanPerekhrest