是否有通过列表替换值的功能?

时间:2019-04-20 06:47:37

标签: python list replace

当前,我正在处理这样的列表

txt=['S&P 500 Index', '2,905.03', '+4.58', '+0.16%']                                  

由于我需要将所有数值都转换为float而不是str,为了使用float(),我必须摆脱“,”和“%”。有没有一个聪明的方法可以做到这一点?

现在,我正在做这样的事情。通过查找确切的索引来更改所有内容。

txt[1]=txt[1].replace(",","")               
txt[3]=txt[3].replace("%","")  

我想看到类似的东西

['S&P 500 Index', '2905.03', '+4.58', '+0.16']

1 个答案:

答案 0 :(得分:1)

如果第一个元素可能不包含%,,则您也可以对其应用替换操作,而无需更改其值。

txt=['S&P 500 Index', '2,905.03', '+4.58', '+0.16%']                                  
txt = [s.replace('%', '').replace(',','') for s in txt]
print(txt)