给定一个列表,例如list=[“X”,“X”,“O”,“O”,“O”,“O”],我如何计算一个列表中有多少个“X”,然后从列表中减去多少个“O”。这个列表总是把所有的X放在第一位,所有的O放在最后。我想我可以做一些像。。。你知道吗
List=["X","X","O","O",'O','O']
ListCount=List.count("X")
del List[-(List2):0]
我以为从-2:0中删除O会产生[“X”,“X”,“O”,“O”],但绝对没有发生什么。在python中。你知道吗
Tags:
假设我理解你的问题,你的切片应该是这样的:
索引0对应于列表中的第一个项目,因此切片
List[-2:0]
表示从下一个到最后一个到第一个之前。因为这将是一个空范围,所以您不会从切片中得到任何内容(或者更确切地说,您的del
语句不会删除任何内容)。你知道吗相反,去掉切片的第二部分。Python将自动切到列表的末尾。你知道吗
正如我在评论中提到的,另一种数据结构在这里可能更有用,因为您不关心顺序:
如果您需要实际的列表,可以使用快速generator expression轻松创建:
或者,反过来说:
相关问题 更多 >
编程相关推荐