我有一個類型爲「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