四季花海
您可以使用itertools.groupby和使用分组密钥来保留密钥或保留返回的组:l = [1,1,1,2,2,3,2,4,4,4,1]from itertools import chain, groupbylist(chain.from_iterable([k] if k==1 else v for k,v in groupby(l)))# [1, 2, 2, 3, 2, 4, 4, 4, 1]
MMMHUHU
如果您在列表的开头搜索那些,则不需要导入模块来执行此操作,也可以在 for 循环中迭代元素:your_list = [1,1,1,2,2,3,2,4,4,4,1]for index, element in enumerate(your_list): if element != 1: breakif index: result = your_list[index-1:]else: result = your_list这将检查一个,直到找到另一个数字。另一个数字 -1 的索引是列表的开头。如果列表中没有 1,index则为零并返回原始列表。