1

如果我有一个清单:

['12 13 0 21 0.3','2 3 0 1 0.1','12 19 0 2 0.9','22 33 0 3 0.5']

如何删除除每个元素的最后一部分之外的所有内容,以便列表变为:

['0.3','0.1','0.9','0.5']
4

3 回答 3

6

你可以这样使用list comprehensionsand rsplit

l = ['12 13 0 21 0.3','2 3 0 1 0.1','12 19 0 2 0.9','22 33 0 3 0.5']

print([s.rsplit(' ', 1)[1] for s in l])

输出:

['0.3', '0.1', '0.9', '0.5']
于 2013-04-22T15:44:53.093 回答
5

使用 Python 列表推导,如下所示:

l = ['12 13 0 21 0.3','2 3 0 1 0.1','12 19 0 2 0.9','22 33 0 3 0.5']
print [x.rsplit(' ', 1)[1] for x in l]

> ['0.3', '0.1', '0.9', '0.5']
于 2013-04-22T15:45:47.040 回答
1

这会起作用,它使用列表综合方法:

list = [i[-3:len(i)] for i in ['12 13 0 2.1', '2.3 43 4.4']]
于 2013-04-22T15:49:24.430 回答