在python中添加列表索引

在python中添加列表索引,python,arrays,list,Python,Arrays,List,假设我有这个清单: [['1', '1', '1', '1', '1', '.12'], ['1', '1', '1', '1', '1', '.13']] 我想把每个数组的最后一个元素(.12和.13)加在一起,如何将这些字符串转换成实数,并把它们加在一起?还假设列表中的每个数组可以具有不同的长度。它应该简单到: >>> data = [['1', '1', '1', '1', '1', '.12'], ['1', '1', '1', '1', '1', '.13']] &

假设我有这个清单:

[['1', '1', '1', '1', '1', '.12'], ['1', '1', '1', '1', '1', '.13']]

我想把每个数组的最后一个元素(.12和.13)加在一起,如何将这些字符串转换成实数,并把它们加在一起?还假设列表中的每个数组可以具有不同的长度。

它应该简单到:

>>> data = [['1', '1', '1', '1', '1', '.12'], ['1', '1', '1', '1', '1', '.13']]
>>> sum(float(x[-1]) for x in data)
0.25
sum(map(float,(lst1[-1],lst2[-1])))
样本输出:

>>> lst1 = ["1", ".1"]
>>> lst2 = ["1", ".2"]
>>> sum(map(float,(lst1[-1],lst2[-1])))
0.30000000000000004

它应该简单到:

sum(map(float,(lst1[-1],lst2[-1])))
样本输出:

>>> lst1 = ["1", ".1"]
>>> lst2 = ["1", ".2"]
>>> sum(map(float,(lst1[-1],lst2[-1])))
0.30000000000000004
这很有效-

>>> li = [['1', '1', '1', '1', '1', '.12'], ['1', '1', '1', '1', '1', '.13']]
>>> reduce(lambda x,y:float(x[-1])+float(y[-1]), li)
0.25
这很有效-

>>> li = [['1', '1', '1', '1', '1', '.12'], ['1', '1', '1', '1', '1', '.13']]
>>> reduce(lambda x,y:float(x[-1])+float(y[-1]), li)
0.25
或者只是:

result = sum(float(arr[-1]) for arr in as_string)
或者只是:

result = sum(float(arr[-1]) for arr in as_string)

很好用!最后一个问题,有没有办法将结果数字四舍五入到小数点后2位?效果非常好!最后一个问题,有没有办法将结果数字四舍五入到小数点后2位?