列表后处理遇到问题

时间:2015-06-08 11:10:39

标签: python list formatting

我有一个小程序,在Python列表中需要进行后处理。这些元素是列表的一部分:

Exit 14:07:11
Entry 14:07:16
Exit 14:07:20
Entry 14:07:24
Exit 14:07:28
Entry 14:07:32
Exit 14:07:36
Entry 14:07:40
Exit 14:07:44

这基本上是一个人在一个房间(只有一扇门)进出的阅读。所以两个条目或出口不能在一起。我怎样才能在表格中得到它:

Entry....
Exit.....
Entry....
Exit.....
Entry....
Exit.....
Entry....
Exit ......

等等?以下是我尝试使用for循环,但这不起作用:

 for i in range(0,len(y)-2):
        if y[i] == y[i+1]:
            y.remove(y[i])
    print y
    # close the cursor object

我怎样才能获得所需的格式?

2 个答案:

答案 0 :(得分:0)

ok ...所以试试这个,问题是你在迭代时删除元素,所以尝试使用列表理解: -

y = [temp for i,temp in enumerate(y[:-1]) if y[i].split(" ")[0] !=y[i+1].split(" ")[0]] + [y[-1]]

答案 1 :(得分:0)

我不认为迭代列表并同时删除其项目是一件好事。

为什么不使用其他临时列表?

library(devtools)
install_github("Rdatatable/data.table", build_vignettes = FALSE)